結果
| 問題 |
No.1407 Kindness
|
| コンテスト | |
| ユーザー |
titia
|
| 提出日時 | 2021-02-26 22:36:01 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
RE
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 803 bytes |
| コンパイル時間 | 207 ms |
| コンパイル使用メモリ | 12,800 KB |
| 実行使用メモリ | 26,496 KB |
| 最終ジャッジ日時 | 2024-10-02 15:18:39 |
| 合計ジャッジ時間 | 9,445 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 12 RE * 24 |
ソースコード
import sys
input = sys.stdin.readline
N=input().strip()
mod=10**9+7
if int(N)<=2000:
ANS=0
for i in range(int(N)+1):
x=str(i)
SX=1
for y in x:
SX=SX*int(y)
ANS+=SX
print(ANS%mod)
exit()
S=[1,45]
for i in range(2*10**5):
S.append(S[-1]*45%mod)
S1=[0,45]
for i in range(2*10**5):
S1.append((S1[-1]+pow(45,i+2,mod))%mod)
H=[0,1,3,6,10,15,21,28,36,45,0]
H1=[1,2,4,7,11,16,22,29,37,46]
ANS=0
kakeru=1
LEN=len(N)
for i in range(LEN):
if i==0:
ANS=ANS+(H[int(N[i])-1])*pow(45,LEN-i-1,mod)+S1[LEN-i-1]
elif i==LEN-1:
ANS=ANS+kakeru*H[int(N[i])]*S[LEN-i-1]
else:
ANS=ANS+kakeru*H[int(N[i])-1]*S[LEN-i-1]
ANS%=mod
kakeru=kakeru*int(N[i])%mod
#print(ANS)
print(ANS)
titia