結果

問題 No.2219 Re:010
ユーザー lam6er
提出日時 2025-03-26 15:44:17
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 65 ms / 2,000 ms
コード長 879 bytes
コンパイル時間 237 ms
コンパイル使用メモリ 82,660 KB
実行使用メモリ 76,036 KB
最終ジャッジ日時 2025-03-26 15:44:21
合計ジャッジ時間 2,428 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 21
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

MOD = 998244353
S = input().strip()
a = 0
b = 0
c = 0
count = 1 # initial number of configurations (no question marks processed yet)
for char in S:
if char == '0':
new_a = (a + count) % MOD
new_b = b % MOD
new_c = (c + b) % MOD
new_count = count
elif char == '1':
new_a = a % MOD
new_b = (b + a) % MOD
new_c = c % MOD
new_count = count
else: # char is '?'
# case when treated as '0'
a0 = (a + count) % MOD
b0 = b % MOD
c0 = (c + b) % MOD
# case when treated as '1'
a1 = a % MOD
b1 = (b + a) % MOD
c1 = c % MOD
new_a = (a0 + a1) % MOD
new_b = (b0 + b1) % MOD
new_c = (c0 + c1) % MOD
new_count = (count * 2) % MOD
a, b, c, count = new_a, new_b, new_c, new_count
print(c % MOD)
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0