A Sphenic Number is a positive integer n which is product of exactly three distinct primes. The first few sphenic numbers are 30, 42, 66, 70, 78, 102, 105, 110, 114, …
Given a number n, determine whether it is a Sphenic Number or not.
Input : 30 Output : Yes Explanation : 30 is the smallest Sphenic number, 30 = 2 × 3 × 5 the product of the smallest three primes Input : 60 Output : No Explanation : 60 = 22 x 3 x 5 has exactly 3 prime factors but is not a sphenic number
Sphenic number can be checked by first generating the Least prime factor of numbers till n.
Then we could simply divide the number by its least prime factor and then that number by its least prime factor, and so on and then check if the number has exactly 3 distinct prime factors.
Below is the C++ implementation of the idea.
Time Complexity: O(nlog(n))
Auxiliary Space: O(n)
This article is contributed by Ayush Khanduri. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
- Count number of trailing zeros in Binary representation of a number using Bitset
- Count number of triplets with product equal to given number with duplicates allowed
- Find minimum number to be divided to make a number a perfect square
- Number of times the largest perfect square number can be subtracted from N
- Number which has the maximum number of distinct prime factors in the range M to N
- Given number of matches played, find number of teams in tournament
- Number of possible permutations when absolute difference between number of elements to the right and left are given
- Find the total number of composite factor for a given number
- Number of times a number can be replaced by the sum of its digits until it only contains one digit
- Queries on sum of odd number digit sums of all the factors of a number
- Program to calculate the number of odd days in given number of years
- Count number of ways to divide a number in 4 parts
- Program to Convert Octal Number to Binary Number
- Querying maximum number of divisors that a number in a given range has
- Find the number of integers x in range (1,N) for which x and x+1 have same number of divisors