Dado un número entero N, la tarea es encontrar un número de N dígitos tal que no sea divisible por ninguno de sus dígitos.
Nota: Puede haber varias respuestas para cada valor de N.
Ejemplos:
Entrada: N = 4
Salida: 6789
Explicación:
Como el número 6789 no es divisible por ninguna de sus cifras, es 6, 7, 8 y 9 y además es un número de cuatro cifras. Por lo tanto, puede ser el número deseado.Entrada: N = 2
Salida: 57
Explicación:
Como el número 57 no es divisible por ninguna de sus cifras, es 5 y 7 y además es un número de 2 cifras. Por lo tanto, puede ser el número deseado.
Enfoque: La observación clave en el problema es que 2 y 3 son esos números que no se dividen entre sí. Además, los números “23, 233, 2333, …” no son divisibles ni por 2 ni por 3. Por lo tanto, para cualquier número de N dígitos, el dígito más significativo será 2 y el resto de los dígitos serán 3 para obtener el número deseado.
Algoritmo:
- Verifique si el valor de N es igual a 1, entonces no hay tal número posible, por lo tanto, devuelva -1.
- De lo contrario, inicialice una variable num para almacenar el número en 2.
- Ejecute un bucle de 1 a N y luego, para cada iteración, multiplique el número por 10 y súmele 3.
num = (num * 10) + 3
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ implementation to find a // N-digit number such that the number // it is not divisible by its digits #include <bits/stdc++.h> using namespace std; typedef long long int ll; // Function to find the number // such that it is not divisible // by its digits void solve(ll n) { // Base Cases if (n == 1) { cout << -1; } else { // First Digit of the // number will be 2 int num = 2; // Next digits of the numbers for (ll i = 0; i < n - 1; i++) { num = (num * 10) + 3; } cout << num; } } // Driver Code int main() { ll n = 4; // Function Call solve(n); }
Java
// Java implementation to find a // N-digit number such that the number // it is not divisible by its digits class GFG { long ll; // Function to find the number // such that it is not divisible // by its digits static void solve(long n) { // Base Cases if (n == 1) { System.out.println(-1); } else { // First Digit of the // number will be 2 int num = 2; // Next digits of the numbers for (long i = 0; i < n - 1; i++) { num = (num * 10) + 3; } System.out.println(num); } } // Driver Code public static void main (String[] args) { long n = 4; // Function Call solve(n); } } // This code is contributed by AnkitRai01
Python3
# Python3 implementation to find a # N-digit number such that the number # it is not divisible by its digits # Function to find the number # such that it is not divisible # by its digits def solve(n) : # Base Cases if (n == 1) : print(-1); else : # First Digit of the # number will be 2 num = 2; # Next digits of the numbers for i in range(n - 1) : num = (num * 10) + 3; print(num); # Driver Code if __name__ == "__main__" : n = 4; # Function Call solve(n); # This code is contributed by AnkitRai01
C#
// C# implementation to find a // N-digit number such that the number // it is not divisible by its digits using System; class GFG { long ll; // Function to find the number // such that it is not divisible // by its digits static void solve(long n) { // Base Cases if (n == 1) { Console.WriteLine(-1); } else { // First Digit of the // number will be 2 int num = 2; // Next digits of the numbers for (long i = 0; i < n - 1; i++) { num = (num * 10) + 3; } Console.WriteLine(num); } } // Driver Code public static void Main(String[] args) { long n = 4; // Function Call solve(n); } } // This code is contributed by sapnasingh4991
Javascript
<script> //Javascript implementation to find a // N-digit number such that the number // it is not divisible by its digits // Function to find the number // such that it is not divisible // by its digits function solve(n) { // Base Cases if (n == 1) { document.write( -1); } else { // First Digit of the // number will be 2 var num = 2; // Next digits of the numbers for (var i = 0; i < n - 1; i++) { num = (num * 10) + 3; } document.write( num); } } // Given N var n = 4; // Function Call solve(n); // This code is contributed by SoumikMondal </script>
2333
Análisis de rendimiento:
- Complejidad temporal: O(N).
- Espacio Auxiliar: O(1).
Publicación traducida automáticamente
Artículo escrito por Ripunjoy Medhi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA