
if __name__ == "__main__":

    line = [int(x) for x in input().split()]
    N, M, C = line[0], line[1], line[2]

    students = []
    for _ in range(N):
        line = [int(x) for x in input().split()]
        a, b = line[0], line[1]
        students.append( (a - 1, b - 1) )

    prim_students_used = set()
    sec_students_used = set()
    schools = [[] for _ in range(M)]

    for i in range(len(students)):
        if (len(schools[students[i][0]]) < C):
            schools[students[i][0]].append(i)
            prim_students_used.add(i)

    changed = True
    students.reverse()

    while changed:
        changed = False

        for i in range(len(schools)):
            for j in range(len(students)):
                if j in prim_students_used:
                    break

                if not (students[j][0] == i or students[j][1] == i):
                    break

                if (j in prim_students_used):
                    break

                if (len(schools[i]) == C):
                    worst = max(schools[i])
                    if worst > j:
                        break
                    if (j in sec_students_used):
                        schools[students[j][1]].remove(j)
                    schools[i].append(j)
                    changed = True
                else:
                    if (j in sec_students_used):
                        schools[students[j][1]].remove(j)
                        changed = True
                        schools[i].append(j)
        f = 0
        s = 0
        for i in range(students):
            if i in schools[student[i][0]]:
                f += 1
            if i in schools[student[i][1]]:
                s += 1

    print(f,s)






