# Find pair with maximum GCD for integers in range 2 to N

Given a number N, the task is to find a pair of integers in the range [2, N] with maximum GCD.

Examples:

Input: N = 10
Output: 5
Explaination:
Maximum possible GCD between all possible pairs is 5 which occurs for the pair (10, 5).

Input: N = 13
Output: 6
Explaination:
Maximum possible GCD between all possible pairs is 6 which occurs for the pair (12, 6).

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach:
Follow the steps below to solve the problem:

1. If N is even, return the pair {N, N / 2}.

Illustration:
If N = 10, Maximum possible GCD for any pair is 5( for the pair {5, 10}).

If N = 20, Maximum possible GCD for any pair is 10( for the pair {20, 10}).

2. If N is odd, then return the pair{N – 1, (N – 1) / 2}.

Illustration:
If N = 11, Maximum possible GCD for any pair is 5( for the pair {5, 10}).

If N = 21, Maximum possible GCD for any pair is 10( for the pair {20, 10}).

Below is the implementation of the above approach:

## C++

 `// C++ Program to find a pair of ` `// integers less than or equal  ` `// to N such that their GCD ` `// is maximum ` `#include ` `using` `namespace` `std; ` ` `  `// Function to find the required ` `// pair whose GCD is maximum ` `void` `solve(``int` `N) ` `{ ` `    ``// If N is even ` `    ``if` `(N % 2 == 0) { ` ` `  `        ``cout << N / 2 << ``" "` `             ``<< N << endl; ` `    ``} ` `    ``// If N is odd ` `    ``else` `{ ` `        ``cout << (N - 1) / 2 << ``" "` `             ``<< (N - 1) << endl; ` `    ``} ` `} ` ` `  `// Driver Code ` `int` `main() ` `{ ` `    ``int` `N = 10; ` `    ``solve(N); ` `    ``return` `0; ` `} `

## Java

 `// Java program to find a pair of ` `// integers less than or equal  ` `// to N such that their GCD ` `// is maximum ` ` `  `class` `GFG{ ` ` `  `// Function to find the required ` `// pair whose GCD is maximum ` `static` `void` `solve(``int` `N) ` `{ ` `     `  `    ``// If N is even ` `    ``if` `(N % ``2` `== ``0``) ` `    ``{ ` `        ``System.out.print(N / ``2` `+ ``" "` `+ ` `                         ``N + ``"\n"``); ` `    ``} ` `     `  `    ``// If N is odd ` `    ``else` `    ``{ ` `        ``System.out.print((N - ``1``) / ``2` `+ ``" "` `+  ` `                         ``(N - ``1``) + ``"\n"``); ` `    ``} ` `} ` ` `  `// Driver Code ` `public` `static` `void` `main(String[] args) ` `{ ` `    ``int` `N = ``10``; ` `     `  `    ``solve(N); ` `} ` `} ` ` `  `// This code is contributed by Amit Katiyar `

## Python3

 `# Python3 Program to find a pair   ` `# of integers less than or equal  ` `# to N such that their GCD  ` `# is maximum  ` ` `  `# Function to find the required  ` `# pair whose GCD is maximum  ` `def` `solve(N):  ` `     `  `    ``# If N is even  ` `    ``if` `(N ``%` `2` `=``=` `0``):  ` `        ``print``(N ``/``/` `2``, N)  ` `         `  `    ``# If N is odd  ` `    ``else` `:  ` `        ``print``((N ``-` `1``) ``/``/` `2``, (N ``-` `1``))  ` `     `  `# Driver Code  ` `N ``=` `10` `solve(N) ` ` `  `# This code is contributed by divyamohan123 `

## C#

 `// C# program to find a pair of ` `// integers less than or equal  ` `// to N such that their GCD ` `// is maximum ` `using` `System; ` `class` `GFG{ ` ` `  `// Function to find the required ` `// pair whose GCD is maximum ` `static` `void` `solve(``int` `N) ` `{ ` `     `  `    ``// If N is even ` `    ``if` `(N % 2 == 0) ` `    ``{ ` `        ``Console.Write(N / 2 + ``" "` `+ ` `                      ``N + ``"\n"``); ` `    ``} ` `     `  `    ``// If N is odd ` `    ``else` `    ``{ ` `        ``Console.Write((N - 1) / 2 + ``" "` `+  ` `                      ``(N - 1) + ``"\n"``); ` `    ``} ` `} ` ` `  `// Driver Code ` `public` `static` `void` `Main(String[] args) ` `{ ` `    ``int` `N = 10; ` `     `  `    ``solve(N); ` `} ` `} ` ` `  `// This code is contributed by shivanisinghss2110 `

Output:

```5 10
```

Time Complexity: O(1)
Auxiliary Space: O(1)

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.

My Personal Notes arrow_drop_up Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.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.