Given two integer
Input: A = 6, B = 12
2 and 3 are the only common prime divisors of 6 and 12
Input: A = 4, B = 8
Naive Approach: Iterate from 1 to min(A, B) and check whether i is prime and a factor of both A and B, if yes then increment the counter.
Efficient Approach is to do following:
Below is the implementation of the above approach:
If there are multiple queries for counting common divisors, we can further optimize above code using Prime Factorization using Sieve O(log n) for multiple queries
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Common prime factors of two numbers
- Count numbers from range whose prime factors are only 2 and 3
- Count numbers from range whose prime factors are only 2 and 3 using Arrays | Set 2
- Count numbers in a range having GCD of powers of prime factors equal to 1
- Print all numbers whose set of prime factors is a subset of the set of the prime factors of X
- Maximum count of pairwise co-prime and common divisors of two given numbers
- K-Primes (Numbers with k prime factors) in a range
- Find sum of exponents of prime factors of numbers 1 to N
- Count of Nodes whose both immediate children are its prime factors
- Number of distinct prime factors of first n natural numbers
- Find the row whose product has maximum count of prime factors
- Find and Count total factors of co-prime A or B in a given range 1 to N
- Count of prime factors of N to be added at each step to convert N to M
- Count of nodes in a Binary Tree whose child is its prime factors
- Count all prime numbers in a given range whose sum of digits is also prime
- Check if a number exists having exactly N factors and K prime factors
- Count of common multiples of two numbers in a range
- Count of numbers upto M divisible by given Prime Numbers
- Count of numbers below N whose sum of prime divisors is K
- Count of subarrays having exactly K prime numbers
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.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.