Greatest divisor which divides all natural number in range [L, R]

Given two integers L and R, the task is to find the greatest divisor that divides all the natural numbers in the range [L, R].

Examples:

Input: L = 3, R = 12
Output: 1

Input: L = 24, R = 24
Output: 24

Approach: For a range of consecutive integer elements, there are two cases:

  • If L = R then the answer will L.
  • If L < R then all consecutive natural numbers in this range are co-primes. So, 1 is the only number that will be able to divide all the elements of the range.

Below is the implementation of the above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ implementation of the approach
#include <bits/stdc++.h>
using namespace std;
  
// Function to return the greatest divisor that
// divides all the natural numbers in the range [l, r]
int find_greatest_divisor(int l, int r)
{
    if (l == r)
        return l;
  
    return 1;
}
  
// Driver Code
int main()
{
    int l = 2, r = 12;
  
    cout << find_greatest_divisor(l, r);
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java implementation of the approach 
  
class GFG {
  
// Function to return the greatest divisor that 
// divides all the natural numbers in the range [l, r] 
    static int find_greatest_divisor(int l, int r) {
        if (l == r) {
            return l;
        }
  
        return 1;
    }
  
// Driver Code 
    public static void main(String[] args) {
        int l = 2, r = 12;
  
        System.out.println(find_greatest_divisor(l, r));
    }
}
// This code is contributed by PrinciRaj1992

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python3 implementation of the approach
  
# Function to return the greatest divisor that
# divides all the natural numbers in the range [l, r]
def find_greatest_divisor(l, r):
  
    if (l == r):
        return l;
  
    return 1;
  
  
# Driver Code
  
l = 2;
r = 12;
  
print(find_greatest_divisor(l, r));
  
#This code is contributed by Shivi_Aggarwal

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# implementation of the approach 
using System;
  
class GFG { 
  
    // Function to return the greatest divisor that 
    // divides all the natural numbers in the range [l, r] 
    static int find_greatest_divisor(int l, int r) { 
        if (l == r) { 
            return l; 
        
  
        return 1; 
    
  
    // Driver Code 
    public static void Main() { 
        int l = 2,  r = 12 ;
  
        Console.WriteLine(find_greatest_divisor(l, r)); 
    
    // This code is contributed by Ryuga
  

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP implementation of the approach
  
// Function to return the greatest 
// divisor that divides all the natural 
// numbers in the range [l, r]
function find_greatest_divisor($l, $r)
{
    if ($l == $r)
        return $l;
  
    return 1;
}
  
// Driver Code
$l = 2;
$r = 12;
  
echo find_greatest_divisor($l, $r);
  
// This code is contributed by jit_t
?>

chevron_right


Output:

1

Time Complexity: O(1)



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.