Given a number N. The task is to find the number of co-prime pairs (a, b) from 1 to N such that their product(a*b) is equal to N.
Note: A pair(a, b) is said to be co-prime if gcd(a, b) = 1.
Examples:
Input: N = 120 Output: No. of co-prime pairs = 3 (3, 40) (5, 24) (8, 15) Input: N= 250 Output: No. of co-prime pairs = 3 (2, 125)
Approach: Given that the elements in the pair should be co-prime to each other. Let a co prime pair be (a, b),
Given, a * b = N.
Therefore,
So the idea is to run a loop from 1 to and check whether i and (N/i) are coprime to each other or not and whether, i*(N/i) = N. If yes, then count such pairs.
Below is the implementation of the above approach:
C++
// C++ program to count number of Co-prime pairs// from 1 to N with product equals to N#include <bits/stdc++.h>using namespace std;// Function to count number of Co-prime pairs// from 1 to N with product equals to Nvoid countCoprimePairs(int n){ int count = 0; cout << "The co- prime pairs are: " << endl; // find all the co- prime pairs // Traverse from 2 to sqrt(N) and check // if i, N/i are coprimes for (int i = 2; i <= sqrt(n); i++) { // check if N is divisible by i, // so that the other term in pair i.e. N/i // is integral if (n % i == 0) { // Check if i and N/i are coprime if (__gcd(i, (n / i)) == 1) { // Display the co- prime pairs cout << "(" << i << ", " << (n / i) << ")\n"; count++; } } } cout << "\nNumber of coprime pairs : " << count;}// Driver codeint main(){ int N = 120; countCoprimePairs(N); return 0;} |
Java
// Java program to count number of Co-prime pairs// from 1 to N with product equals to Nimport java.io.*;public class GFG { // Recursive function to return gcd of a and b static int __gcd(int a, int b) { // Everything divides 0 if (a == 0) return b; if (b == 0) return a; // base case if (a == b) return a; // a is greater if (a > b) return __gcd(a-b, b); return __gcd(a, b-a); } // Function to count number of Co-prime pairs// from 1 to N with product equals to Nstatic void countCoprimePairs(int n){ int count = 0; System.out.println( "The co- prime pairs are: "); // find all the co- prime pairs // Traverse from 2 to sqrt(N) and check // if i, N/i are coprimes for (int i = 2; i <= Math.sqrt(n); i++) { // check if N is divisible by i, // so that the other term in pair i.e. N/i // is integral if (n % i == 0) { // Check if i and N/i are coprime if (__gcd(i, (n / i)) == 1) { // Display the co- prime pairs System.out.print( "(" +i + ", " + (n / i) + ")\n"); count++; } } } System.out.println("\nNumber of coprime pairs : " + count);}// Driver code public static void main (String[] args) { int N = 120; countCoprimePairs(N); }}// This code is contributed by shs.. |
Python 3
# Python program to count number # of Co-prime pairs from 1 to N # with product equals to N # import everything from math libfrom math import *# Function to count number of # Co-prime pairs from 1 to N# with product equals to N def countCoprimePairs(n) : count = 0 print("The co-prime pairs are: ") # find all the co- prime pairs # Traverse from 2 to sqrt(N) and # check if i, N//i are coprimes for i in range(2, int(sqrt(n)) + 1) : # check if N is divisible by i, # so that the other term in pair # i.e. N/i is integral if n % i == 0 : # Check if i and N/i are coprime if gcd(i, n // i) == 1 : # Display the co- prime pairs print("(", i,",", (n // i),")") count += 1 print("Number of coprime pairs : ", count) # Driver code if __name__ == "__main__" : N = 120 countCoprimePairs(N)# This code is contributed by ANKITRAI1 |
C#
// C# program to count number // of Co-prime pairs from 1 to N // with product equals to Nusing System;class GFG{// Recursive function to// return gcd of a and b static int __gcd(int a, int b) { // Everything divides 0 if (a == 0) return b; if (b == 0) return a; // base case if (a == b) return a; // a is greater if (a > b) return __gcd(a - b, b); return __gcd(a, b - a); } // Function to count number of // Co-prime pairs from 1 to N // with product equals to Nstatic void countCoprimePairs(int n){int count = 0;Console.WriteLine("The co- prime pairs are: ");// find all the co- prime pairs// Traverse from 2 to sqrt(N) and // check if i, N/i are coprimesfor (int i = 2; i <= Math.Sqrt(n); i++) { // check if N is divisible by i, // so that the other term in pair // i.e. N/i is integral if (n % i == 0) { // Check if i and N/i are coprime if (__gcd(i, (n / i)) == 1) { // Display the co- prime pairs Console.WriteLine( "(" + i + ", " + (n / i) + ")\n"); count++; } }}Console.WriteLine("\nNumber of coprime" + " pairs : " + count);}// Driver codepublic static void Main (){ int N = 120; countCoprimePairs(N);}}// This code is contributed by Shashank |
PHP
<?php// PHP program to count number of// Co-prime pairs from 1 to N with // product equals to N// Function to count number of // Co-prime pairs from 1 to N // with product equals to Nfunction gcd($a,$b){ return $b ? gcd($b, $a % $b) : $a;}function countCoprimePairs($n){ $count = 0; echo "The co-prime pairs are: " ."\n"; // find all the co- prime pairs // Traverse from 2 to sqrt(N) and // check if i, N/i are coprimes for ($i = 2; $i <= sqrt($n); $i++) { // check if N is divisible by i, // so that the other term in pair // i.e. N/i is integral if ($n % $i == 0) { // Check if i and N/i are coprime if (gcd($i, ($n / $i)) == 1) { // Display the co- prime pairs echo "(" .$i . ", " . ($n / $i) .")\n"; $count++; } } } echo "\nNumber of coprime pairs : " . $count;}// Driver code$N = 120;countCoprimePairs($N);// This code is contributed// by ChitraNayal?> |
Javascript
<script>// Javascript program to count number of Co-prime pairs// from 1 to N with product equals to N// Recursive function to// return gcd of a and b function __gcd(a, b) { // Everything divides 0 if (a == 0) return b; if (b == 0) return a; // base case if (a == b) return a; // a is greater if (a > b) return __gcd(a - b, b); return __gcd(a, b - a); } // Function to count number of Co-prime pairs// from 1 to N with product equals to Nfunction countCoprimePairs(n){ var count = 0; document.write( "The co- prime pairs are: " + "<br>"); // find all the co- prime pairs // Traverse from 2 to sqrt(N) and check // if i, N/i are coprimes for (var i = 2; i <= Math.sqrt(n); i++) { // check if N is divisible by i, // so that the other term in pair i.e. N/i // is integral if (n % i == 0) { // Check if i and N/i are coprime if (__gcd(i, parseInt(n / i)) == 1) { // Display the co- prime pairs document.write( "(" + i + ", " + parseInt(n / i) + ")<br>"); count++; } } } document.write( "<br>Number of coprime pairs : " + count);}// Driver codevar N = 120;countCoprimePairs(N);</script> |
The co- prime pairs are: (3, 40) (5, 24) (8, 15) Number of coprime pairs : 3
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!

… [Trackback]
[…] Info on that Topic: geeksforgeeks.org/number-of-co-prime-pairs-from-1-to-n-with-product-equals-to-n/ […]
… [Trackback]
[…] Find More here to that Topic: geeksforgeeks.org/number-of-co-prime-pairs-from-1-to-n-with-product-equals-to-n/ […]