Problem Statement
The monetary system in Absurdistan is really simple and systematic. The locals only use coins. The coins come in different values. The values used are:
1, 10, 25, 100, 1000, 2500, 10000, 100000, 250000, 1000000, ...
Formally, for each K>=0 there are coins worth 10K, and coins worth 25*100K.
You want to buy a new car. Its price is cost. Write a method that will return the smallest number of coins necessary to pay exactly the cost of the car (assuming you have a sufficient supply of coins of each of the types you will need).
Definition
- Class:
- AnotherCoinProblem
- Method:
- minimumCoins
- Parameters:
- long
- Returns:
- int
- Method signature:
- int minimumCoins(long cost)
- (be sure your method is public)
Constraints
- cost will be between 1 and 10^15, inclusive.
Examples
47
Returns: 5
The best way to pay 47 is 25+10+10+1+1.
9
Returns: 9
To pay 9, we can only use nine coins worth 1 each.
250111
Returns: 4
25
Returns: 1
1
Returns: 1
24
Returns: 6
30
Returns: 3
31
Returns: 4
32
Returns: 5
33
Returns: 6
34
Returns: 7
35
Returns: 2
36
Returns: 3
37
Returns: 4
38
Returns: 5
39
Returns: 6
40
Returns: 4
41
Returns: 5
42
Returns: 6
43
Returns: 7
44
Returns: 8
45
Returns: 3
76540123
Returns: 16
3*25,000,000 + 1*1,000,000 + 2*250,000 + 4*10,000 + 1*100 + 2*10 + 3*1 = 76,540,123 3 + 1 + 2 + 4 + 1 + 2 + 3 = 16
1000000000000000
Returns: 1
987654321098765
Returns: 50
101202727737
Returns: 21
125908112010729
Returns: 30
12786
Returns: 9
137206159
Returns: 19
138015088383
Returns: 39
14740840019
Returns: 29
149205
Returns: 18
152555
Returns: 11
154167205
Returns: 25
160210158
Returns: 15
16597166
Returns: 26
1762101
Returns: 9
179026314073902
Returns: 36
18007238816
Returns: 32
2
Returns: 2
21
Returns: 3
22162970668
Returns: 31
222060
Returns: 9
2231
Returns: 8
22892429063
Returns: 32
249388745191
Returns: 40
27
Returns: 3
271728800179794
Returns: 45
2772788690199
Returns: 36
280
Returns: 7
284
Returns: 11
32322717478489
Returns: 43
348750
Returns: 15
35227460790
Returns: 27
370792930
Returns: 22
3762407577745
Returns: 34
37766739439818
Returns: 45
3814983131119
Returns: 40
3857
Returns: 11
39384686844
Returns: 45
394737
Returns: 15
3966461843
Returns: 32
4
Returns: 4
4046
Returns: 8
411581015298
Returns: 30
445197216031
Returns: 28
464729220
Returns: 27
479244517
Returns: 28
480
Returns: 9
48695825605538
Returns: 35
507326498628267
Returns: 51
50910288302
Returns: 29
530169
Returns: 15
53239712070541
Returns: 37
54428
Returns: 17
580483816
Returns: 28
581
Returns: 11
58657906
Returns: 25
606
Returns: 12
6077000
Returns: 17
60962067
Returns: 18
6117781833
Returns: 33
61212483
Returns: 21
63303834486366
Returns: 39
64
Returns: 7
64168674663308
Returns: 47
6654187395818
Returns: 44
66674598532988
Returns: 41
6707815093726
Returns: 37
6831214819
Returns: 31
6905736332
Returns: 32
69510
Returns: 12
703333398646249
Returns: 49
706151903
Returns: 32
721879
Returns: 22
73180336290549
Returns: 39
7386766142832
Returns: 39
74016690
Returns: 21
754873477324
Returns: 34
755726100764
Returns: 26
763585411389141
Returns: 45
77463302859
Returns: 36
78566
Returns: 17
786003196119
Returns: 36
8068732
Returns: 25
81115217
Returns: 20
818220
Returns: 15
8189362163958
Returns: 51
8212900
Returns: 16
8318120
Returns: 20
83789357745
Returns: 30
84925531173
Returns: 30
8501490251
Returns: 17
89703603
Returns: 18
90
Returns: 6
904748
Returns: 17
9133
Returns: 13
924422482
Returns: 34
933914256836079
Returns: 51
9433
Returns: 16
9599505285247
Returns: 40
9713
Returns: 11
979793479722000
Returns: 45
999999999994799
Returns: 68
999999999994798
Returns: 67
300012200300000
Returns: 11
3000000000
Returns: 3
25000000000030
Returns: 4
1082406931
Returns: 25
10528479858031
Returns: 34
3000
Returns: 3
65
Returns: 5
999999999999997
Returns: 70
678886
Returns: 19
30000000000000
Returns: 3
250
Returns: 4
666
Returns: 12
9999
Returns: 18
83000000000000
Returns: 8
287345444
Returns: 29
123455463457651
Returns: 31
5436534643654
Returns: 40
42523526623
Returns: 25
94949494
Returns: 40
55
Returns: 4
784985601224794
Returns: 49
1234567891011
Returns: 27
131679235679767
Returns: 43
994949494949494
Returns: 79
750
Returns: 9