Submission #3974108
Source Code Expand
MOD = 10**9 + 7
K = input()
N = len(K)
D = int(input())
S = [[0, 0] for i in range(D)]
S[0][0] = 1
for i in range(N):
c = int(K[i])
T = [[0, 0] for i in range(D)]
for d in range(D):
w0, w1 = S[d]
w0 %= MOD
w = S[d][0] % MOD
for v in range(c):
T[(d+v)%D][1] += w0
T[(d+c)%D][0] += w0
w1 %= MOD
for v in range(10):
T[(d+v)%D][1] += w1
S = T
print((sum(S[0])-1) % MOD)
Submission Info
| Submission Time | |
|---|---|
| Task | S - Digit Sum |
| User | yaketake08 |
| Language | PyPy3 (2.4.0) |
| Score | 100 |
| Code Size | 485 Byte |
| Status | AC |
| Exec Time | 725 ms |
| Memory | 45020 KiB |
Judge Result
| Set Name | All | ||
|---|---|---|---|
| Score / Max Score | 100 / 100 | ||
| Status |
|
| Set Name | Test Cases |
|---|---|
| All | 0_00, 0_01, 0_02, 1_00, 1_01, 1_02, 1_03, 1_04, 1_05, 1_06, 1_07, 1_08, 1_09, 1_10, 1_11, 1_12, 1_13, 1_14, 1_15, 1_16, 1_17, 1_18, 1_19, 1_20, 1_21 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 0_00 | AC | 162 ms | 38256 KiB |
| 0_01 | AC | 166 ms | 38384 KiB |
| 0_02 | AC | 178 ms | 40048 KiB |
| 1_00 | AC | 164 ms | 38256 KiB |
| 1_01 | AC | 167 ms | 38256 KiB |
| 1_02 | AC | 200 ms | 42092 KiB |
| 1_03 | AC | 725 ms | 42716 KiB |
| 1_04 | AC | 615 ms | 43740 KiB |
| 1_05 | AC | 559 ms | 43100 KiB |
| 1_06 | AC | 574 ms | 43356 KiB |
| 1_07 | AC | 558 ms | 43100 KiB |
| 1_08 | AC | 623 ms | 43356 KiB |
| 1_09 | AC | 649 ms | 43356 KiB |
| 1_10 | AC | 631 ms | 43356 KiB |
| 1_11 | AC | 583 ms | 43228 KiB |
| 1_12 | AC | 577 ms | 43228 KiB |
| 1_13 | AC | 615 ms | 45020 KiB |
| 1_14 | AC | 625 ms | 43740 KiB |
| 1_15 | AC | 617 ms | 43356 KiB |
| 1_16 | AC | 595 ms | 43228 KiB |
| 1_17 | AC | 629 ms | 44252 KiB |
| 1_18 | AC | 543 ms | 42972 KiB |
| 1_19 | AC | 559 ms | 43100 KiB |
| 1_20 | AC | 163 ms | 38256 KiB |
| 1_21 | AC | 163 ms | 38256 KiB |