結果
問題 | No.2219 Re:010 |
ユーザー |
👑 ![]() |
提出日時 | 2022-01-27 21:44:32 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 106 ms / 2,000 ms |
コード長 | 537 bytes |
コンパイル時間 | 647 ms |
コンパイル使用メモリ | 81,664 KB |
実行使用メモリ | 77,696 KB |
最終ジャッジ日時 | 2024-12-26 03:41:56 |
合計ジャッジ時間 | 3,406 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 |
ソースコード
def mod_product(*X): y=1 for x in X: y*=x; y%=Mod return y S=input() a=b=0 c=S.count("0"); d=S.count("?") Mod=998244353 TWO=[1]*(len(S)+1) for i in range(1,len(S)+1): TWO[i]=(2*TWO[i-1])%Mod four_inv=pow(4,Mod-2,Mod) Ans=0 for s in S: if s=="0": c-=1 elif s=="?": d-=1 if s!="0": Ans+=mod_product(2*a+b,2*c+d,TWO[b+d]) Ans%=Mod if s=="0": a+=1 elif s=="?": b+=1 Ans*=four_inv; Ans%=Mod print(Ans)