using System; using static System.Console; using System.Linq; using System.Collections.Generic; class Program { static int NN => int.Parse(ReadLine()); static int[] NList => ReadLine().Split().Select(int.Parse).ToArray(); static string[] SList(long n) => Enumerable.Repeat(0, (int)n).Select(_ => ReadLine()).ToArray(); public static void Main() { Solve(); } static void Solve() { var c = NList; var (n, k, q) = (c[0], c[1], c[2]); var s = SList(q); var count = new long[k]; var rowlist = new bool[n]; var collist = new bool[n]; var rows = n; var cols = n; for (var i = q - 1; i >= 0; --i) { var t = s[i].Split(); var b = int.Parse(t[1]) - 1; var color = int.Parse(t[2]) - 1; if (t[0] == "R") { if (!rowlist[b]) { count[color] += cols; rowlist[b] = true; --rows; } } else { if (!collist[b]) { count[color] += rows; collist[b] = true; --cols; } } } for (var i = 0; i < n; ++i) if (!rowlist[i]) count[0] += cols; WriteLine(string.Join("\n", count)); } }