結果
問題 | No.2834 Work to Play |
ユーザー |
|
提出日時 | 2024-06-18 15:21:34 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 562 bytes |
コンパイル時間 | 236 ms |
コンパイル使用メモリ | 82,104 KB |
実行使用メモリ | 787,868 KB |
最終ジャッジ日時 | 2024-06-18 16:03:03 |
合計ジャッジ時間 | 12,694 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 26 WA * 19 MLE * 1 -- * 40 |
ソースコード
from collections import defaultdict N,A,K=list(map(int,input().split())) C=defaultdict(int) def C_Num(N,A): for i in range(1,N+1): C[i]=A*i C_Num(N,A) ans=0 MOD=998244353 def Remove1(K): cnt=0 for i in range(1,N+1): M=C[i]//K cnt=(cnt+M*i)%MOD C[i]=C[i]%K return cnt ans=Remove1(K) def Remove2(K): cnt=0 now=0 ok=0 for i in range(N,0,-1): if ok==0 and C[i]!=0: cnt+=i ok=1 now=C[i] elif ok==1: now+=C[i] if now==K: now=0 ok=0 if now>K: now-=K cnt+=i return cnt%MOD ans=(ans+Remove2(K))%MOD print(ans*2)