結果

問題 No.2219 Re:010
ユーザー 👑 p-adicp-adic
提出日時 2023-06-01 10:54:31
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 516 ms / 2,000 ms
コード長 224 bytes
コンパイル時間 633 ms
コンパイル使用メモリ 12,288 KB
実行使用メモリ 11,136 KB
最終ジャッジ日時 2024-12-28 14:42:38
合計ジャッジ時間 6,827 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 21
権限があれば一括ダウンロードができます

ソースコード

diff #

S=input()
P=998244353
Q=(P+1)//2
Z=H=z=h=a=0
for s in S:
	Z+=s<'1'
	H+=s>'1'
p=1
R=q=pow(2,H,P)
for s in S:
	b=s>'1'
	if s<'1':z+=1
	else:a,h,p,q=a+(z+h*Q)*R*[1,Q][b]*((Z-z)+(H-h-b)*Q)%P,h+b,p*(1+b)%P,q*[1,Q][b]%P
print(a%P)
0