結果

問題 No.2219 Re:010
ユーザー behoma8
提出日時 2023-03-07 17:31:07
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
TLE  
実行時間 -
コード長 458 bytes
コンパイル時間 149 ms
コンパイル使用メモリ 12,672 KB
実行使用メモリ 18,208 KB
最終ジャッジ日時 2024-09-18 02:11:52
合計ジャッジ時間 25,369 ms
ジャッジサーバーID
(参考情報)
judge1 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 12 TLE * 6 -- * 3
権限があれば一括ダウンロードができます

ソースコード

diff #

S = input()
MOD = 998244353
p = 1
N = len(S)
d0, d1, d2 = 0, 0, 0
e0, e1, e2 = 0, 0, 0
for i in range(N):
    if S[i] == '0':
        e0 = ( d0 + p ) % MOD
        e1 = d1
        e2 = ( d2 + d1 ) % MOD
    elif S[i] == '1':
        e0 = d0
        e1 = ( d1 + d0 ) % MOD
        e2 = d2
    else:
        e0 = ( 2 * d0 + p ) % MOD
        e1 = ( 2 * d1 + d0 ) % MOD
        e2 = ( 2 * d2 + d1 ) % MOD
        p *= 2
    d0, d1, d2 = e0, e1, e2

print( d2 )
0