結果

問題 No.2867 NOT FOUND 404 Again
ユーザー sasa8uyauyasasa8uyauya
提出日時 2024-08-31 03:59:18
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 509 ms / 3,000 ms
コード長 787 bytes
コンパイル時間 525 ms
コンパイル使用メモリ 81,968 KB
実行使用メモリ 78,820 KB
最終ジャッジ日時 2024-08-31 03:59:27
合計ジャッジ時間 9,009 ms
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 39 ms
52,820 KB
testcase_01 AC 41 ms
54,424 KB
testcase_02 AC 40 ms
52,204 KB
testcase_03 AC 437 ms
78,428 KB
testcase_04 AC 389 ms
78,764 KB
testcase_05 AC 422 ms
78,308 KB
testcase_06 AC 432 ms
78,620 KB
testcase_07 AC 392 ms
78,384 KB
testcase_08 AC 416 ms
78,520 KB
testcase_09 AC 393 ms
78,636 KB
testcase_10 AC 385 ms
78,608 KB
testcase_11 AC 382 ms
78,552 KB
testcase_12 AC 389 ms
78,656 KB
testcase_13 AC 427 ms
78,820 KB
testcase_14 AC 389 ms
78,300 KB
testcase_15 AC 392 ms
78,376 KB
testcase_16 AC 384 ms
78,704 KB
testcase_17 AC 386 ms
78,760 KB
testcase_18 AC 308 ms
77,908 KB
testcase_19 AC 509 ms
78,600 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

s=input()
n=len(s)
M=998244353
q=[[0]*3,[0]*3]
c=int(s[0])
q[0][c==4]=1
for d in range(1,c):
  q[1][d==4]+=1
for i in range(1,n):
  c=int(s[i])
  nq=[[0]*3,[0]*3]
  for d in range(1,10):
    nq[1][d==4]+=1
  for d in range(c,c+1):
    nq[0][0]+=q[0][0]*(d!=4)+q[0][1]*(d!=0)*(d!=4)+q[0][2]*(d!=4)
    nq[0][1]+=q[0][0]*(d==4)+q[0][1]*(d==4)
    nq[0][2]+=q[0][1]*(d==0)
  for d in range(c):
    nq[1][0]+=q[0][0]*(d!=4)+q[0][1]*(d!=0)*(d!=4)+q[0][2]*(d!=4)
    nq[1][1]+=q[0][0]*(d==4)+q[0][1]*(d==4)
    nq[1][2]+=q[0][1]*(d==0)
  for d in range(10):
    nq[1][0]+=q[1][0]*(d!=4)+q[1][1]*(d!=0)*(d!=4)+q[1][2]*(d!=4)
    nq[1][1]+=q[1][0]*(d==4)+q[1][1]*(d==4)
    nq[1][2]+=q[1][1]*(d==0)
  for ii in range(2):
    for jj in range(3):
      nq[ii][jj]%=M
  q=nq
print(sum(q[0]+q[1])%M)
0