Problem Statement
Definition
- Class:
- SmoothNumbersHard
- Method:
- countSmoothNumbers
- Parameters:
- int, int
- Returns:
- int
- Method signature:
- int countSmoothNumbers(int N, int k)
- (be sure your method is public)
Constraints
- N will be between 1 and 5,000,000, inclusive.
- k will be between 1 and 1,000, inclusive.
Examples
10
3
Returns: 7
Of the first ten positive integers, only 5, 7 and 10 have prime factors greater than 3; the rest are 3-smooth.
10
4
Returns: 7
4 is not prime, so 4-smooth numbers are the same as 3-smooth numbers.
15
3
Returns: 8
5
20
Returns: 5
5000000
1000
Returns: 1196525
1
1
Returns: 1
1
100
Returns: 1
100000
1
Returns: 1
2
2
Returns: 2
99999
100
Returns: 17441
99999
96
Returns: 16760
99999
97
Returns: 17441
96
97
Returns: 96
96
96
Returns: 96
121
11
Returns: 61
168
13
Returns: 87
50
7
Returns: 31
50000
10
Returns: 566
65536
2
Returns: 17
4999990
1000
Returns: 1196523
5000000
996
Returns: 1192345
5000000
997
Returns: 1196525
5000000
5
Returns: 682
950
1000
Returns: 950
123456
123
Returns: 23855
5000
1
Returns: 1
5000000
731
Returns: 1015104
4989898
1000
Returns: 1194680
5000000
500
Returns: 816749
4999999
600
Returns: 903642
5000000
343
Returns: 618234
5000000
998
Returns: 1196525
5000000
123
Returns: 241786
5000000
999
Returns: 1196525
5000000
1
Returns: 1
5000000
527
Returns: 842818
4987654
987
Returns: 1185903
4000000
33
Returns: 33073
5000000
978
Returns: 1183920
5000000
717
Returns: 1004649
4999678
675
Returns: 977640
4888887
459
Returns: 756789
4123654
123
Returns: 215681
4956349
997
Returns: 1188530
5000000
991
Returns: 1192345