import bisect n, m, q = map(int, input().split()) pairs = [] for _ in range(q): a, b = map(int, input().split()) pairs.append((a, b)) pairs.sort() b_list = [b for a, b in pairs] tails = [] for num in b_list: idx = bisect.bisect_left(tails, num) if idx < len(tails): tails[idx] = num else: tails.append(num) print(len(tails))