: , , . .
A B S.
:
- , A - 1, sum S.
- , B sum S.
- .
. :
D- , k, S?
N [D, k, S], . , D 16 S 136, 10 ; 16 ; 136 = 21 760 , . , :
- N [1, S, S] = 1 0 & le; S & le; 9, , .
- N [1, k, S] = 0 0 & le; S & le; 9, k & ne; S, , , .
- N [1, k, S] = 0 10 & le; S & le; 135, S k, .
- N [1, k, S] = 0 S < 0.
:
- N [D + 1, k, S] = (i 0 9) N [D, i, S - k].
, (D + 1) - , k, S, D- , S-k. D- , S-k, D- , S-k, 0, 1, 2,..., 9, .
DP O (1), , .
, ? , , , , S, X. X . X , d 1... d n. N [n, d 1, S]. n- , d 1, S. , X, S. , 21111, , 12, , 29 100, 2 , X. , X. 2, 10. , X (21,111) 1, 4- , 2, 3, 4, 5,..., 9, 10. .
. X - , S - . X = d 1 d 2... d n :
result = 0
for i from 0 to d[1]:
result += N[n, i, S]
S -= d[1]
for i = 2 to n:
for j = d[i] to 8:
result -= N[n, d[i], S]
S -= d[i]
result , X, S. 16 , . , , S.
[A, B] sum S.
DP, , , A, S. , , , DP .
, !