Finding number of integers which has exactly x divisors
Learn how to solve the 'Finding number of integers which has exactly x divisors' problem. This detailed resource details brute force and optimized approaches.
Problem Statement
Write a function count_with_x_divisors(n, x) that takes two positive integers n and x, and returns the count of integers in the range [1, n] (inclusive) that have exactly x divisors.
A divisor of a number k is any integer that divides k evenly. For example, divisors of 6 are 1, 2, 3, 6 (4 divisors).
- •1 <= n <= 1000
- •1 <= x <= 50
Examples
count_with_x_divisors(10, 2)
4
Numbers from 1 to 10 with exactly 2 divisors (i.e., prime numbers): 2, 3, 5, 7. That's 4 numbers.
count_with_x_divisors(10, 1)
1
Only the number 1 has exactly 1 divisor.
count_with_x_divisors(20, 4)
5
Numbers from 1-20 with exactly 4 divisors: 6(1,2,3,6), 8(1,2,4,8), 10(1,2,5,10), 14(1,2,7,14), 15(1,3,5,15). That's 5 numbers.
Need a Hint?
Edge Cases to Watch
- Empty list or null input variables
- Single item lists/arrays
- Extremely large input bounds causing integer or stack overflow
Ready to Solve?
Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.