Minimum positive integer divisible by C and is not in range [A, B]
Last Updated :
23 Jun, 2022
Given three positive integers A, B and C. The task is to find the minimum integer X > 0 such that:
- X % C = 0 and
- X must not belong to the range [A, B]
Examples:
Input: A = 2, B = 4, C = 2
Output: 6
Input: A = 5, B = 10, C = 4
Output: 4
Approach:
- If C doesn’t belong to [A, B] i.e. C < A or C > B then C is the required number.
- Else get the first multiple of C greater than B which is the required answer.
Below is the implementation of the above approach:
C++
#include <iostream>
using namespace std;
int getMinNum( int a, int b, int c)
{
if (c < a || c > b)
return c;
int x = ((b / c) * c) + c;
return x;
}
int main()
{
int a = 2, b = 4, c = 4;
cout << getMinNum(a, b, c);
return 0;
}
|
Java
import java.io.*;
import java.math.*;
public class GFG
{
int getMinNum( int a, int b, int c)
{
if (c < a || c > b)
{
return c;
}
int x = ((b / c) * c) + c;
return x;
}
public static void main(String args[])
{
int a = 2 ;
int b = 4 ;
int c = 4 ;
GFG g = new GFG();
System.out.println(g.getMinNum(a, b, c));
}
}
|
Python3
def getMinNum(a, b, c):
if (c < a or c > b):
return c
x = ((b / / c) * c) + c
return x
a, b, c = 2 , 4 , 4
print (getMinNum(a, b, c))
|
C#
using System;
class GFG
{
static int getMinNum( int a, int b, int c)
{
if (c < a || c > b)
{
return c;
}
int x = ((b / c) * c) + c;
return x;
}
static public void Main ()
{
int a = 2, b = 4, c = 4;
Console.WriteLine( getMinNum(a, b, c));
}
}
|
PHP
<?php
function getMinNum( $a , $b , $c )
{
if ( $c < $a || $c > $b )
return $c ;
$x = ( floor (( $b / $c )) * $c ) + $c ;
return $x ;
}
$a = 2;
$b = 4;
$c = 4;
echo getMinNum( $a , $b , $c );
?>
|
Javascript
<script>
function getMinNum(a, b, c)
{
if (c < a || c > b)
return c;
let x = (parseInt(b / c) * c) + c;
return x;
}
let a = 2, b = 4, c = 4;
document.write(getMinNum(a, b, c));
</script>
|
Time Complexity: O(1)
Auxiliary Space: O(1)
Share your thoughts in the comments
Please Login to comment...