結果
| 問題 |
No.3117 Reversible Tile
|
| コンテスト | |
| ユーザー |
sasa8uyauya
|
| 提出日時 | 2025-04-19 02:16:36 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 468 ms / 3,000 ms |
| コード長 | 420 bytes |
| コンパイル時間 | 454 ms |
| コンパイル使用メモリ | 82,776 KB |
| 実行使用メモリ | 77,124 KB |
| 最終ジャッジ日時 | 2025-04-19 02:16:45 |
| 合計ジャッジ時間 | 8,545 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 24 |
ソースコード
n,m=map(int,input().split())
a=[0]+list(map(int,input().split()))+[0]
for i in reversed(range(1,n+2)):
a[i]^=a[i-1]
M=998244353
q=[0]*(n+2)
q[sum(a)]=1
for _ in range(m):
nq=[0]*(n+2)
for c1 in range(n+2):
c0=n+1-c1
if c1>=2:
nq[c1-2]+=q[c1]*(c1*(c1-1)//2)
nq[c1-2]%=M
if c0>=2:
nq[c1+2]+=q[c1]*(c0*(c0-1)//2)
nq[c1+2]%=M
nq[c1]+=q[c1]*c1*c0
nq[c1]%=M
q=nq
print(q[0])
sasa8uyauya