Problem Statement
A positive integer is called nice if the sum of its digits is equal to S and the product of its digits is equal to 2p2 * 3p3 * 5p5 * 7p7. Return the sum of all nice integers, modulo 500,500,573.
Definition
- Class:
- ProductAndSum
- Method:
- getSum
- Parameters:
- int, int, int, int, int
- Returns:
- int
- Method signature:
- int getSum(int p2, int p3, int p5, int p7, int S)
- (be sure your method is public)
Constraints
- p2, p3, p5 and p7 will each be between 0 and 100, inclusive.
- S will be between 1 and 2,500, inclusive.
Examples
2
0
0
0
4
Returns: 26
There are two nice integers: 22 and 4. Their sum is 26.
0
0
0
0
10
Returns: 110109965
A single nice integer is 1,111,111,111.
2
0
0
0
5
Returns: 610
41 + 14 + 221 + 212 + 122 = 610.
1
1
1
1
10
Returns: 0
There are no nice integers in this case.
5
5
5
5
100
Returns: 61610122
100
100
34
67
2041
Returns: 268200754
100
99
24
69
2000
Returns: 385907327
100
98
62
58
2478
Returns: 186084835
100
97
45
5
2464
Returns: 468723757
100
96
61
27
2281
Returns: 50668157
99
100
42
95
2491
Returns: 68489749
99
99
91
36
2327
Returns: 165766199
99
98
53
2
2104
Returns: 376559586
99
97
21
82
2292
Returns: 462109132
99
96
95
18
2216
Returns: 290254221
98
100
71
26
2447
Returns: 495878343
98
99
12
69
2038
Returns: 92823186
98
98
35
99
2167
Returns: 266535157
98
97
11
3
2394
Returns: 425265856
98
96
73
33
2322
Returns: 417856319
97
100
11
41
2164
Returns: 410729479
97
99
47
68
2253
Returns: 307010913
97
98
57
62
2144
Returns: 327029316
97
97
23
59
2037
Returns: 55856839
97
96
78
29
2241
Returns: 89485861
96
100
90
35
2316
Returns: 425224040
96
99
6
88
2342
Returns: 77717964
96
98
64
42
2040
Returns: 92927444
96
97
5
46
2148
Returns: 3621132
96
96
70
29
2390
Returns: 117476934
100
100
100
100
2500
Returns: 170475026
99
100
100
100
2500
Returns: 45315716
100
99
100
100
2500
Returns: 349608881
100
100
99
100
2500
Returns: 384987143
100
100
100
99
2500
Returns: 263234477
3
3
1
1
51
Returns: 229603858
1
4
4
3
30
Returns: 0
3
1
1
1
41
Returns: 434668555
0
0
0
0
1
Returns: 1
0
0
0
0
197
Returns: 294037466
0
0
0
0
2500
Returns: 31047937
7
3
6
9
945
Returns: 235497365
1
9
2
8
539
Returns: 379047531
4
8
9
5
834
Returns: 143638123
96
93
96
97
2430
Returns: 266971056
90
92
94
95
2021
Returns: 139944642
92
97
93
97
2329
Returns: 266759609
55
36
61
90
2486
Returns: 250703379
52
31
74
55
2267
Returns: 51859623
66
24
41
50
1850
Returns: 23841847
80
0
0
0
2500
Returns: 368592545
0
57
0
0
2500
Returns: 47528899
57
91
0
0
2500
Returns: 323002950
0
0
87
0
2500
Returns: 232566792
87
0
57
0
2500
Returns: 92147065
0
83
53
0
2500
Returns: 474185308
59
59
95
0
2500
Returns: 314251932
0
0
0
58
2500
Returns: 247506587
88
0
0
71
2500
Returns: 22524280
0
96
0
72
2500
Returns: 365333407
63
80
0
56
2500
Returns: 135561643
0
0
50
68
2500
Returns: 390058460
55
0
62
91
2500
Returns: 113553236
0
74
59
60
2500
Returns: 73032833
95
83
98
87
2500
Returns: 489199652
91
0
0
0
2500
Returns: 106218916
0
52
0
0
2500
Returns: 420112512
91
50
0
0
2500
Returns: 11656772
0
0
86
0
2500
Returns: 223213735
70
0
74
0
2500
Returns: 382506820
0
71
96
0
2500
Returns: 103052079
68
99
98
0
2500
Returns: 334538801
0
0
0
84
2500
Returns: 187154282
84
0
0
81
2500
Returns: 222801261
0
99
0
53
2500
Returns: 45093158
50
88
0
68
2500
Returns: 88279352
0
0
77
88
2500
Returns: 288889906
93
0
78
67
2500
Returns: 426799655
0
57
83
98
2500
Returns: 489417667
63
67
60
71
2500
Returns: 297755926
1
1
0
0
6
Returns: 1338
2
2
0
0
10
Returns: 17775
1
2
1
1
20
Returns: 2666640
2
1
1
2
100
Returns: 266346431
35
35
35
35
595
Returns: 261176114
76
53
31
53
1234
Returns: 428298429
99
98
96
97
2497
Returns: 58035561
100
100
0
0
2500
Returns: 415728531