def main(): import sys input = sys.stdin.read().split() ptr = 0 L = int(input[ptr]) ptr += 1 R = int(input[ptr]) ptr += 1 M = int(input[ptr]) ptr += 1 a = [] b = [] d1 = [0] * L d2 = [0] * R for _ in range(M): ai = int(input[ptr]) ptr += 1 bi = int(input[ptr]) ptr += 1 a.append(ai) b.append(bi) d1[ai] += 1 d2[bi] += 1 d1_min = min(d1) d2_min = min(d2) k_max = min(d1_min, d2_min) colors = [] for i in range(M): ai = a[i] bi = b[i] color = (ai + bi) % k_max colors.append(color) print(k_max) print('\n'.join(map(str, colors))) if __name__ == '__main__': main()