結果

問題 No.606 カラフルタイル
ユーザー 👑 obakyan
提出日時 2019-06-07 23:59:19
言語 Lua
(LuaJit 2.1.1734355927)
結果
AC  
実行時間 115 ms / 2,000 ms
コード長 831 bytes
コンパイル時間 210 ms
コンパイル使用メモリ 6,944 KB
実行使用メモリ 13,716 KB
最終ジャッジ日時 2024-10-05 22:09:24
合計ジャッジ時間 3,099 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 25
権限があれば一括ダウンロードができます

ソースコード

diff #

local n, k, q = io.read("*n", "*n", "*n", "*l")
local ta, tb, tc = {}, {}, {}
for i = 1, q do
  local a, b, c = io.read():match("(%w) (%d+) (%d+)")
  ta[i], tb[i], tc[i] = (a == "R"), tonumber(b), tonumber(c)
end
local rowused, colused = {}, {}
for i = 1, n do
  rowused[i], colused[i] = false, false
end
local rowrem, colrem = n, n

local color = {}
for i = 1, k do color[i] = 0 end
for i = q, 1, -1 do
  if ta[i] then
    if not rowused[tb[i]] then
      rowused[tb[i]] = true
      color[tc[i]] = color[tc[i]] + colrem
      rowrem = rowrem - 1
    end
  else
    if not colused[tb[i]] then
      colused[tb[i]] = true
      color[tc[i]] = color[tc[i]] + rowrem
      colrem = colrem - 1
    end
  end
end
for i = 1, n do
  if not rowused[i] then
    color[1] = color[1] + colrem
  end
end
for i = 1, k do
  print(color[i])
end
0