Dado un entero positivo N , la tarea es generar una string binaria aleatoria de longitud N .
Ejemplos:
Entrada: N = 7
Salida: 1000001Entrada: N = 5
Salida: 01001
Enfoque: el problema dado se puede resolver usando la función rand() que genera un número aleatorio en el rango [0, RAND_MAX ] y con la ayuda del valor devuelto por esta función, cualquier número en cualquier rango [L, R] se puede generar como (rand() % (R – L + 1)) + L . Siga los pasos a continuación para resolver el problema:
- Inicialice una string vacía , digamos S.
- Iterar sobre el rango [0, N – 1] y realizar los siguientes pasos:
- Almacene un número aleatorio en el rango [0, 1] usando la función rand() .
- Agregue el 0 o 1 generado aleatoriamente al final de la string S .
- Después de completar los pasos anteriores, imprima la string S como la string binaria resultante.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ program for the above approach #include <bits/stdc++.h> using namespace std; // Function to find a random // number between 0 or 1 int findRandom() { // Generate the random number int num = ((int)rand() % 2); // Return the generated number return num; } // Function to generate a random // binary string of length N void generateBinaryString(int N) { srand(time(NULL)); // Stores the empty string string S = ""; // Iterate over the range [0, N - 1] for (int i = 0; i < N; i++) { // Store the random number int x = findRandom(); // Append it to the string S += to_string(x); } // Print the resulting string cout << S; } // Driver Code int main() { int N = 7; generateBinaryString(N); return 0; }
Java
// Java program for the above approach class GFG{ // Function to find a random // number between 0 or 1 static int findRandom() { // Generate the random number int num = (1 + (int)(Math.random() * 100)) % 2; // Return the generated number return num; } // Function to generate a random // binary string of length N static void generateBinaryString(int N) { // Stores the empty string String S = ""; // Iterate over the range [0, N - 1] for(int i = 0; i < N; i++) { // Store the random number int x = findRandom(); // Append it to the string S = S + String.valueOf(x); } // Print the resulting string System.out.println(S); } // Driver Code public static void main (String[] args) { int N = 7; generateBinaryString(N); } } // This code is contributed by AnkThon
Python3
# Python3 program for the above approach import random # Function to find a random # number between 0 or 1 def findRandom(): # Generate the random number num = random.randint(0, 1) # Return the generated number return num # Function to generate a random # binary string of length N def generateBinaryString(N): # Stores the empty string S = "" # Iterate over the range [0, N - 1] for i in range(N): # Store the random number x = findRandom() # Append it to the string S += str(x) # Print the resulting string print(S) # Driver Code N = 7 generateBinaryString(N) # This code is contributed by sanjoy_62
C#
// C# program for the above approach using System; using System.Collections.Generic; using System.Linq; public class GFG { // Function to find a random // number between 0 or 1 static int findRandom() { // For random generator Random rand = new Random(); // Generate the random number int num = rand.Next() % 2; // Return the generated number return num; } // Function to generate a random // binary string of length N static void generateBinaryString(int N) { // Stores the empty string string S = ""; // Iterate over the range [0, N - 1] for(int i = 0; i < N; i++) { // Store the random number int x = findRandom(); // Append it to the string S = S + x.ToString(); } // Print the resulting string Console.WriteLine(S); } // Driver Code public static void Main (string[] args) { int N = 7; generateBinaryString(N); } } // This code is contributed by code_hunt.
Javascript
<script> // Javascript program for the above approach // Function to find a random // number between 0 or 1 function findRandom() { // Generate the random number let num = (1 + parseInt((Math.random() * 100))) % 2; // Return the generated number return num; } // Function to generate a random // binary string of length N function generateBinaryString(N) { // Stores the empty string let S = ""; // Iterate over the range [0, N - 1] for (let i = 0; i < N; i++) { // Store the random number let x = findRandom(); // Append it to the string S += (x).toString(); } // Print the resulting string document.write(S) } // Driver Code let N = 7; generateBinaryString(N); // This code is contributed by Hritik </script>
0101101
Complejidad temporal: O(N)
Espacio auxiliar: O(N)
Publicación traducida automáticamente
Artículo escrito por naveen_kumar_172 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA