La secuencia de Beatty (o secuencia de Beatty homogénea ) es la secuencia de números enteros que se encuentra tomando el piso de los múltiplos positivos de un número irracional positivo.
El término N de la sucesión de Beatty:
Encuentre los términos N de la secuencia de Beatty
Dado un número entero N , la tarea es imprimir los primeros N términos de la sucesión de Beatty.
Ejemplos:
Entrada: N = 5
Salida: 1, 2, 4, 5, 7
Entrada: N = 10
Salida: 1, 2, 4, 5, 7, 8, 9, 11, 12,
Enfoque: la idea es iterar de 1 a N usando bucle para encontrar el término de la secuencia. El término de la sucesión de Beatty viene dado por:
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 print the first N terms // of the Beatty sequence void BeattySequence(int n) { for (int i = 1; i <= n; i++) { double ans = floor(i * sqrt(2)); cout << ans << ", "; } } // Driver code int main() { int n = 5; BeattySequence(n); return 0; }
Java
// Java implementation of the // above approach import java.util.*; class GFG{ // Function to print the first N terms // of the Beatty sequence static void BeattySequence(int n) { for(int i = 1; i <= n; i++) { int ans = (int)Math.floor(i * Math.sqrt(2)); System.out.print(ans + ", "); } } // Driver code public static void main(String args[]) { int n = 5; BeattySequence(n); } } // This code is contributed by Code_Mech
Python3
# Python3 implementation of the # above approach import math # Function to print the first N terms # of the Beatty sequence def BeattySequence(n): for i in range(1, n + 1): ans = math.floor(i * math.sqrt(2)) print(ans, end = ', ') # Driver code n = 5 BeattySequence(n) # This code is contributed by yatin
C#
// C# implementation of the // above approach using System; class GFG{ // Function to print the first N terms // of the Beatty sequence static void BeattySequence(int n) { for(int i = 1; i <= n; i++) { double ans = Math.Floor(i * Math.Sqrt(2)); Console.Write(ans + ", "); } } // Driver code public static void Main() { int n = 5; BeattySequence(n); } } // This code is contributed by Code_Mech
Javascript
<script> // Javascript implementation of the // above approach // Function to print the first N terms // of the Beatty sequence function BeattySequence( n) { for ( let i = 1; i <= n; i++) { let ans = parseInt( Math.floor(i * Math.sqrt(2))); document.write(ans + ", "); } } // Driver code let n = 5; BeattySequence(n); // This code contributed by Rajput-Ji </script>
Producción:
1, 2, 4, 5, 7,
Complejidad de tiempo: O (n 1/2 )
Espacio Auxiliar: O(1)
Referencia: https://oeis.org/A001951