Problem Statement
The prime factorization of a number X is the list of prime numbers that multiply together to form X. For example, the prime factorization of 12 is 2 * 2 * 3. Note that 1 is not a prime number.
An underprime is a number whose prime factorization contains a prime number of elements. For example, 12 is an underprime because its prime factorization contains 3 elements, and 3 is a prime number. Given
Definition
- Class:
- Underprimes
- Method:
- howMany
- Parameters:
- int, int
- Returns:
- int
- Method signature:
- int howMany(int A, int B)
- (be sure your method is public)
Notes
- A positive integer number is called prime if it has exactly two divisors - 1 and itself. For example, 2, 3, 5 and 7 are prime numbers, and 4, 6, 8 and 9 are not prime. By convention, 1 is not considered to be a prime number.
- All prime factorizations of the same integer always contain the same prime numbers and can only differ by the order of primes within them.
Constraints
- A will be between 2 and 100000, inclusive.
- B will be between A and 100000, inclusive.
Examples
2
10
Returns: 5
The underprimes in this interval are: 4, 6, 8, 9, 10.
100
105
Returns: 2
The underprimes in this interval are 102 = 2 * 3 * 17 and 105 = 3 * 5 * 7.
17
17
Returns: 0
17 is a prime number, so its prime factorization contains one element. 1 is not a prime, so 17 is not an underprime.
312
12839
Returns: 7987
123
456
Returns: 217
12345
12345
Returns: 1
2
100000
Returns: 63255
127
129
Returns: 2
162
32918
Returns: 20824
2
99999
Returns: 63255
11
99998
Returns: 63250
111
99997
Returns: 63189
12345
12345
Returns: 1
11
13
Returns: 1
228
23094
Returns: 14563
29
2309
Returns: 1456
7328
23409
Returns: 10228
2378
32492
Returns: 19142
9832
98829
Returns: 56250
11111
22222
Returns: 7045
11111
11111
Returns: 1
1111
1111
Returns: 1
111
111
Returns: 1
12
13
Returns: 1
47203
47230
Returns: 18
12345
12346
Returns: 2
888
999
Returns: 79
2
10000
Returns: 6396
12
12
Returns: 1
397
87993
Returns: 55435
17
99013
Returns: 62642
3
99999
Returns: 63255
98
99998
Returns: 63197
5
7000
Returns: 4486
12
99999
Returns: 63250
3
9000
Returns: 5746
2
99997
Returns: 63254
3
100000
Returns: 63255
56
98345
Returns: 62218
99999
100000
Returns: 0
10
10000
Returns: 6392
123
2356
Returns: 1425
123
56798
Returns: 35958
5498
5499
Returns: 1
99842
99842
Returns: 1
4
4
Returns: 1
10
10
Returns: 1
2
98000
Returns: 62028
512
512
Returns: 0