Dado un número N y un número K, la tarea es encontrar el número más pequeño mayor o igual que N que sea divisible por K.
Ejemplos:
Input: N = 45, K = 6 Output: 48 48 is the smallest number greater than or equal to 45 which is divisible by 6. Input: N = 11, K = 3 Output: 12
Enfoque: La idea es dividir N+K entre K. Si el resto es 0, imprima N , de lo contrario, imprima N + K – resto .
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ implementation of the above approach #include <bits/stdc++.h> using namespace std; // Function to find the smallest number // greater than or equal to N // that is divisible by k int findNum(int N, int K) { int rem = (N + K) % K; if (rem == 0) return N; else return N + K - rem; } // Driver code int main() { int N = 45, K = 6; cout << "Smallest number greater than or equal to " << N << "\nthat is divisible by " << K << " is " << findNum(N, K); return 0; }
Java
// Java implementation of the above approach public class GFG{ // Function to find the smallest number // greater than or equal to N // that is divisible by k static int findNum(int N, int K) { int rem = (N + K) % K; if (rem == 0) return N; else return N + K - rem; } // Driver Code public static void main(String []args){ int N = 45, K = 6; System.out.println("Smallest number greater than or equal to " + N +"\nthat is divisible by " + K + " is " + findNum(N, K)); } // This code is contributed by ANKITRAI1 }
Python
# Python 3 implementation of the # above approach # Function to find the smallest number # greater than or equal to N # that is divisible by k def findNum(N, K): rem = (N + K) % K; if (rem == 0): return N else: return (N + K - rem) # Driver Code N = 45 K = 6 print('Smallest number greater than', 'or equal to' , N, 'that is divisible by', K, 'is' , findNum(45, 6)) # This code is contributed by Arnab Kundu
C#
// C# implementation of the above approach public class GFG{ // Function to find the smallest number // greater than or equal to N // that is divisible by k static int findNum(int N, int K) { int rem = (N + K) % K; if (rem == 0) return N; else return N + K - rem; } // Driver Code static void Main(){ int N = 45, K = 6; System.Console.WriteLine("Smallest number greater than or equal to " + N +"\nthat is divisible by " + K + " is " + findNum(N, K)); } // This code is contributed by mits }
PHP
<?php // PHP implementation of the above approach // Function to find the smallest number // greater than or equal to N that is // divisible by k function findNum($N, $K) { $rem = ($N + $K) % $K; if ($rem == 0) return $N; else return $N + $K - $rem; } // Driver code $N = 45; $K = 6; echo "Smallest number greater than " . "or equal to ", $N; echo "\nthat is divisible by " , $K , " is " , findNum($N, $K); // This code is contributed by anuj_67 ?>
Javascript
<script> // javascript implementation of the above approach // Function to find the smallest number // greater than or equal to N // that is divisible by k function findNum(N , K) { var rem = (N + K) % K; if (rem == 0) return N; else return N + K - rem; } // Driver Code var N = 45, K = 6; document.write("Smallest number greater than or equal to " + N +"<br>that is divisible by " + K + " is " + findNum(N, K)); // This code contributed by shikhasingrajput </script>
Producción:
Smallest number greater than or equal to 45 that is divisible by 6 is 48
Complejidad de tiempo: O(1)
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por Shivam.Pradhan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA