import bisect def main(): import sys input = sys.stdin.read().split() ptr = 0 N = int(input[ptr]); ptr +=1 K = int(input[ptr]); ptr +=1 Q = int(input[ptr]); ptr +=1 row_ts = [0] * (N + 1) # 1-based row_color = [1] * (N + 1) col_ts = [0] * (N + 1) col_color = [1] * (N + 1) for t in range(1, Q + 1): A = input[ptr]; ptr +=1 B = int(input[ptr]); ptr +=1 C = int(input[ptr]); ptr +=1 if A == 'R': row_ts[B] = t row_color[B] = C else: col_ts[B] = t col_color[B] = C sorted_row = sorted(row_ts[1:N+1]) sorted_col = sorted(col_ts[1:N+1]) counts = [0] * (K + 1) # Process rows for i in range(1, N+1): ts = row_ts[i] c = row_color[i] cnt = bisect.bisect_left(sorted_col, ts) counts[c] += cnt # Process columns for j in range(1, N+1): ts = col_ts[j] c = col_color[j] cnt = bisect.bisect_right(sorted_row, ts) counts[c] += cnt for k in range(1, K+1): print(counts[k]) if __name__ == "__main__": main()