# Count of binary strings of given length consisting of at least one 1

• Difficulty Level : Medium
• Last Updated : 03 Aug, 2021

Given an integer N, the task is to print the number of binary strings of length N which at least one ‘1’.

Examples:

Input:
Output:
Explanation:
“01”, “10” and “11” are the possible strings

Input:
Output:
Explanation:
“001”, “011”, “010”, “100”, “101”, “110” and “111” are the possible strings

Approach:
We can observe that:

Only one string of length N does not contain any 1, the one filled with only 0’s.
Since 2N strings are possible of length N, the required answer is 2N – 1

Follow the steps below to solve the problem:

• Initialize X = 1.
• Compute upto 2N by performing bitwise left shift on X, N-1 times.
• Finally, print X – 1 as the required answer.

Below is the implementation of our approach:

## C++

 `// C++ Program to implement``// the above approach``#include ``using` `namespace` `std;` `// Function to return``// the count of strings``long` `count_strings(``long` `n)``{``    ``int` `x = 1;` `    ``// Calculate pow(2, n)``    ``for` `(``int` `i = 1; i < n; i++) {``        ``x = (1 << x);``    ``}` `    ``// Return pow(2, n) - 1``    ``return` `x - 1;``}` `// Driver Code``int` `main()``{``    ``long` `n = 3;` `    ``cout << count_strings(n);` `    ``return` `0;``}`

## Java

 `// Java program to implement``// the above approach``import` `java.util.*;` `class` `GFG{` `// Function to return``// the count of Strings``static` `long` `count_Strings(``long` `n)``{``    ``int` `x = ``1``;` `    ``// Calculate Math.pow(2, n)``    ``for``(``int` `i = ``1``; i < n; i++)``    ``{``       ``x = (``1` `<< x);``    ``}` `    ``// Return Math.pow(2, n) - 1``    ``return` `x - ``1``;``}` `// Driver Code``public` `static` `void` `main(String[] args)``{``    ``long` `n = ``3``;` `    ``System.out.print(count_Strings(n));``}``}` `// This code is contributed by Amit Katiyar`

## Python3

 `# Python3 program to implement``# the above approach` `# Function to return``# the count of Strings``def` `count_Strings(n):``    ` `    ``x ``=` `1``;` `    ``# Calculate pow(2, n)``    ``for` `i ``in` `range``(``1``, n):``        ``x ``=` `(``1` `<< x);` `    ``# Return pow(2, n) - 1``    ``return` `x ``-` `1``;` `# Driver Code``if` `__name__ ``=``=` `'__main__'``:``    ` `    ``n ``=` `3``;` `    ``print``(count_Strings(n));` `# This code is contributed by Princi Singh`

## C#

 `// C# program to implement``// the above approach``using` `System;` `class` `GFG{` `// Function to return``// the count of Strings``static` `long` `count_Strings(``long` `n)``{``    ``int` `x = 1;` `    ``// Calculate Math.Pow(2, n)``    ``for``(``int` `i = 1; i < n; i++)``    ``{``       ``x = (1 << x);``    ``}``    ` `    ``// Return Math.Pow(2, n) - 1``    ``return` `x - 1;``}` `// Driver Code``public` `static` `void` `Main(String[] args)``{``    ``long` `n = 3;` `    ``Console.Write(count_Strings(n));``}``}` `// This code is contributed by Amit Katiyar`

## Javascript

 ``

Output:

`3`

Time Complexity: O(N)
Auxiliary Space: O(1)

My Personal Notes arrow_drop_up