N-th term in the series 1, 11, 55, 239, 991,….

Given a number N. The task is to write a program to find the N-th term in the series:

1, 11, 55, 239, 991, …

Examples:

Input: N = 3
Output: 55

Input: N = 4 
Output: 239 

Approach-1: On writing down the binary representation of the given numbers, a pattern can be observed.

1 = 1
11 = 1011
55 = 110111
239 = 11101111
.
.
.

Hence for N = 1, the answer will always be one. For N-th term the binary string will be (n-1)*1 + (0) + (n)*1 which is converted to decimal value to get the answer.

Below is the implementation of the above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ program to find the N-th term
// in 1, 11, 55, 239, 991, ....
#include <bits/stdc++.h>
using namespace std;
  
// Function to return the decimal value
// of a binary number
int binaryToDecimal(string n)
{
    string num = n;
    int dec_value = 0;
  
    // Initializing base value to 1, i.e 2^0
    int base = 1;
  
    int len = num.length();
    for (int i = len - 1; i >= 0; i--) {
        if (num[i] == '1')
            dec_value += base;
        base = base * 2;
    }
  
    return dec_value;
}
  
// find the binary representation
// of the N-th number in sequence
int numberSequence(int n)
{
    // base case
    if (n == 1)
        return 1;
  
    // answer string
    string s = "";
  
    // add n-1 1's
    for (int i = 1; i < n; i++)
        s += '1';
  
    // add 0
    s += '0';
  
    // add n 1's at end
    for (int i = 1; i <= n; i++)
        s += '1';
  
    int num = binaryToDecimal(s);
  
    return num;
}
  
// Driver Code
int main()
{
    int n = 4;
  
    cout << numberSequence(n);
  
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to find the N-th 
// term in 1, 11, 55, 239, 991, ....
import java.util.*;
  
class GFG
{
  
// Function to return the decimal
// value of a binary number
static int binaryToDecimal(String n)
{
    String num = n;
    int dec_value = 0;
  
    // Initializing base
    // value to 1, i.e 2^0
    int base = 1;
  
    int len = num.length();
    for (int i = len - 1; i >= 0; i--)
    {
        if (num.charAt(i) == '1')
            dec_value += base;
        base = base * 2;
    }
  
    return dec_value;
}
  
// find the binary representation
// of the N-th number in sequence
static int numberSequence(int n)
{
    // base case
    if (n == 1)
        return 1;
  
    // answer string
    String s = "";
  
    // add n-1 1's
    for (int i = 1; i < n; i++)
        s += '1';
  
    // add 0
    s += '0';
  
    // add n 1's at end
    for (int i = 1; i <= n; i++)
        s += '1';
  
    int num = binaryToDecimal(s);
  
    return num;
}
  
// Driver Code
public static void main(String args[])
{
    int n = 4;
  
    System.out.println(numberSequence(n));
}
}
  
// This code is contributed 
// by Arnab Kundu

chevron_right


Python 3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python 3 program to find the N-th term
# in 1, 11, 55, 239, 991, ....
   
# Function to return the decimal value
# of a binary number
def binaryToDecimal(n):
  
    num = n
    dec_value = 0
   
    # Initializing base value to 1, i.e 2^0
    base = 1
   
    l = len(num)
    for i in range(l - 1,-1, -1):
        if (num[i] == '1'):
            dec_value += base
        base = base * 2
   
    return dec_value
   
# find the binary representation
# of the N-th number in sequence
def numberSequence(n):
      
    # base case
    if (n == 1):
        return 1
   
    # answer string
    s = ""
   
    # add n-1 1's
    for i in range(1, n):
        s += '1'
   
    # add 0
    s += '0'
   
    # add n 1's at end
    for i in range(1,n+1):
        s += '1'
   
    num = binaryToDecimal(s)
   
    return num
   
# Driver Code
if __name__ == "__main__":
      
    n = 4
   
    print(numberSequence(n))
  
# this code is contributed by ChitraNayal

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to find the N-th 
// term in 1, 11, 55, 239, 991, ....
using System;
  
class GFG
{
  
// Function to return the decimal
// value of a binary number
static int binaryToDecimal(String n)
{
    String num = n;
    int dec_value = 0;
  
    // Initializing base
    // value to 1, i.e 2^0
    int base_ = 1;
  
    int len = num.Length;
    for (int i = len - 1; i >= 0; i--)
    {
        if (num[i] == '1')
            dec_value += base_;
        base_ = base_ * 2;
    }
  
    return dec_value;
}
  
// find the binary representation
// of the N-th number in sequence
static int numberSequence(int n)
{
    // base case
    if (n == 1)
        return 1;
  
    // answer string
    String s = "";
  
    // add n-1 1's
    for (int i = 1; i < n; i++)
        s += '1';
  
    // add 0
    s += '0';
  
    // add n 1's at end
    for (int i = 1; i <= n; i++)
        s += '1';
  
    int num = binaryToDecimal(s);
  
    return num;
}
  
// Driver Code
public static void Main()
{
    int n = 4;
  
    Console.WriteLine(numberSequence(n));
}
}
  
// This code is contributed
// by Subhadeep

chevron_right


PHP

= 0; $i–)
{
if ($num[$i] == ‘1’)
$dec_value += $base;
$base = $base * 2;
}

return $dec_value;
}

// find the binary representation
// of the N-th number in sequence
function numberSequence($n)
{
// base case
if ($n == 1)
return 1;

// answer string
$s = “”;

// add n-1 1’s
for ($i = 1; $i < $n; $i++) $s .= '1'; // add 0 $s .= '0'; // add n 1's at end for ($i = 1; $i <= $n; $i++) $s .= '1'; $num = binaryToDecimal($s); return $num; } // Driver Code $n = 4; echo numberSequence($n); // This code is contributed by mits ?>

Output:

239

Approach-2: The series has a general formulae of 4N-2N-1 which is used to get the N-th term in series.

Below is the implementation of the above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ program to find the N-th term
// in 1, 11, 55, 239, 991, ....
#include <bits/stdc++.h>
using namespace std;
  
// Function to find the N-th term
int numberSequence(int n)
{
    // calculates the N-th term
    int num = pow(4, n) - pow(2, n) - 1;
  
    return num;
}
  
// Driver Code
int main()
{
    int n = 4;
  
    cout << numberSequence(n);
  
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to find the N-th 
// term in 1, 11, 55, 239, 991, ....
class GFG
{
// Function to find the N-th term
static int numberSequence(int n)
{
    // calculates the N-th term
    int num = (int)(Math.pow(4, n) - 
                    Math.pow(2, n)) - 1;
  
    return num;
}
  
// Driver Code
public static void main(String args[])
{
    int n = 4;
  
    System.out.println(numberSequence(n));
}
}
  
// This code is contributed 
// by Arnab Kundu

chevron_right


Python 3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python 3 program to find N-th term 
# in 1, 11, 55, 239, 991, .... 
  
# calculate Nth term of series
def numberSequence(n) :
  
    # calculates the N-th term 
    num = pow(4, n) - pow(2, n) - 1
  
    return num
  
# Driver Code
if __name__ == "__main__" :
  
    n = 4
      
    print(numberSequence(n))
  
# This code is contributed by ANKITRAI1

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to find the N-th 
// term in 1, 11, 55, 239, 991, ....
using System;
  
class GFG
{
// Function to find the N-th term
static int numberSequence(int n)
{
    // calculates the N-th term
    int num = (int)(Math.Pow(4, n) - 
                    Math.Pow(2, n)) - 1;
  
    return num;
}
  
// Driver Code
public static void Main()
{
    int n = 4;
  
    Console.WriteLine(numberSequence(n));
}
}
  
// This code is contributed 
// by chandan_jnu.

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP program to find the N-th term
// in 1, 11, 55, 239, 991, ....
  
// Function to find the N-th term
function numberSequence($n)
{
    // calculates the N-th term
    $num = pow(4, $n) - 
           pow(2, $n) - 1;
  
    return $num;
}
  
// Driver Code
$n = 4;
  
echo numberSequence($n);
  
// This code is contributed by mits
?>

chevron_right


Output:

239


My Personal Notes arrow_drop_up

Striver(underscore)79 at Codechef and codeforces D

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.





Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.