Carol Number

Last Updated : 11 Mar, 2024

A Carol number is an integer of the form 4n – 2(n+1) – 1. An equivalent formula is (2n-1)2 – 2.
An Interesting Property :
For n > 2, the binary representation of the n-th Carol number is n-2 consecutive one’s, a single zero in the middle, and n + 1 more consecutive one’s. Example, n = 4 carol number is 223 and binary of 223 is 11011111, here n-2 = 4-2 = 2 consecutive ones in starting then single 0 in middle and then n + 1 = 4 + 1 = 5 consecutive ones after it.
Given a number n, the task is to find the nth Carol Number. First, few carol numbers are -1, 7, 47, 223, 959… etc.

Examples :

```Input : n = 2
Output: 7

Input : n = 4
Output: 223```
Recommended Practice

C++

 `// C++ program to find n'th Carol number ` `#include ` `using` `namespace` `std; ` ` `  `// Function to find n'th carol number ` `int` `carol(``int` `n) ` `{ ` `    ``int` `result = ``pow``(2, n) - 1; ` `    ``return` `result * result - 2; ` `} ` ` `  `// Driver program to ru the case ` `int` `main() ` `{ ` `    ``int` `n = 4; ` `    ``cout << carol(n); ` `    ``return` `0; ` `} `

Python3

 `# Python program to find n'th Carol number ` `def` `carol(n): ` `    ``# a**b is a ^ b in python ` `    ``result ``=` `(``2``*``*``n) ``-` `1` `    ``return` `result ``*` `result ``-` `2` ` `  `# driver program to run the case ` `n ``=` `4` `print` `(carol(n)) `

Java

 `/* Java program to find n'th Carol number */` `class` `GFG { ` `    ``static` `int` `carol(``int` `n) ` `    ``{ ` `        ``double` `tmp = Math.pow(``2``, n) - ``1``; ` `        ``return` `(``int``)tmp; ` `    ``} ` ` `  `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``int` `n = ``4``; ` `        ``System.out.println(carol(n)); ` `    ``} ` `} `

C#

 `/* C# program to find n'th Carol number */` `using` `System; ` ` `  `class` `GFG { ` `    ``static` `int` `carol(``int` `n) ` `    ``{ ` `        ``int` `result = (``int``)Math.Pow(2, n) - 1; ` `        ``return` `result * result - 2; ` `    ``} ` ` `  `    ``// Driver code ` `    ``public` `static` `void` `Main() ` `    ``{ ` `        ``int` `n = 4; ` `        ``Console.WriteLine(carol(n)); ` `    ``} ` `} ` ` `  `// This code is contributed by vt_m. `

PHP

 ` `

Javascript

 ``

Output :

`223`

Time complexity: O(log n) , for pow function

Auxiliary Space: O(1)

Previous
Next