結果
| 問題 |
No.1689 Set Cards
|
| コンテスト | |
| ユーザー |
👑 |
| 提出日時 | 2022-01-10 10:50:03 |
| 言語 | Lua (LuaJit 2.1.1734355927) |
| 結果 |
AC
|
| 実行時間 | 117 ms / 2,000 ms |
| コード長 | 740 bytes |
| コンパイル時間 | 259 ms |
| コンパイル使用メモリ | 6,816 KB |
| 実行使用メモリ | 46,464 KB |
| 最終ジャッジ日時 | 2024-11-14 10:43:30 |
| 合計ジャッジ時間 | 2,292 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 23 |
ソースコード
local band = bit.band
local bls, brs = bit.lshift, bit.rshift
local mod = 998244353
local function badd(x, y) return (x + y) % mod end
local n = io.read("*n")
local lim = 8192
local pre, suf = {}, {}
local vs = {}
for i = 1, n do
local v = 0
local k = io.read("*n")
for j = 1, k do
local c = io.read("*n")
v = v + bls(1, c)
end
vs[i] = v
end
for i = 1, n do
pre[i] = {}
local v = vs[i]
if i == 1 then
for j = 1, lim do pre[i][j] = 0 end
pre[i][v + 1] = 1
else
for j = 1, lim do pre[i][j] = pre[i - 1][j] end
for j = 1, lim do
local dst = band(j - 1, v)
pre[i][dst + 1] = badd(pre[i][dst + 1], pre[i - 1][j])
end
pre[i][v + 1] = badd(pre[i][v + 1], 1)
end
end
print(pre[n][1])