結果
| 問題 |
No.2857 Div Array
|
| コンテスト | |
| ユーザー |
prd_xxx
|
| 提出日時 | 2024-08-25 15:20:34 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 549 bytes |
| コンパイル時間 | 183 ms |
| コンパイル使用メモリ | 82,172 KB |
| 実行使用メモリ | 114,864 KB |
| 最終ジャッジ日時 | 2024-08-25 15:20:41 |
| 合計ジャッジ時間 | 6,578 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 10 TLE * 2 -- * 18 |
ソースコード
N,M,K = map(int,input().split())
MOD = 998244353
if N==1:
print(M)
exit()
mat = [[int(abs(M//(i+1) - M//(j+1)) <= K) for j in range(M)] for i in range(M)]
def mul(l,r):
ret = [[0]*M for _ in range(M)]
for i,row in enumerate(l):
for j,col in enumerate(zip(*r)):
ret[i][j] = sum(a*b for a,b in zip(row,col)) % MOD
return ret
X = mat
Z = [[int(i==j) for j in range(M)] for i in range(M)]
N -= 1
while N:
if N%2:
Z = mul(Z,X)
X = mul(X,X)
N //= 2
print(sum(sum(row)%MOD for row in Z)%MOD)
prd_xxx