Beatty sequence (or homogeneous Beatty sequence) is the sequence of integers found by taking the floor of the positive multiples of a positive irrational number.
The Nth term of the Beatty sequence:
Find the N terms of Beatty Sequence
Given an integer N, the task is to print the first N terms of the Beatty sequence.
Examples:
Input: N = 5
Output: 1, 2, 4, 5, 7
Input: N = 10
Output: 1, 2, 4, 5, 7, 8, 9, 11, 12,
Approach: The idea is to iterate from 1 to N using loop to find the
Below is the implementation of the above approach:
// 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 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 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# 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 |
<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> |
Output:
1, 2, 4, 5, 7,
Time Complexity: O(n1/2)
Auxiliary Space: O(1)
Reference: https://oeis.org/A001951