Problem:- Write a Hackerrank Solution For Day 10: Binary Numbers or Hacker Rank Solution Program In C++ For ” Day 10: Binary Numbers ” or Hackerrank 30 days of code Java Solution: Day 10: Binary Numbers solution or Hackerrank solution for 30 Days of Code Challenges or Hackerrank 30 days of code Java Solution, Day 10: Binary Numbers solution, or C/C++ Logic & Problem Solving: Day 10: Binary Numbers.

Problem copied from hackerRank :

Objective
Today, we’re working with binary numbers. Check out the Tutorial tab for learning materials and an instructional video!

Task
Given a base- integer, , convert it to binary (base-). Then find and print the base- integer denoting the maximum number of consecutive ‘s in ‘s binary representation.

Input Format

A single integer, .

Constraints

Output Format

Print a single base- integer denoting the maximum number of consecutive ‘s in the binary representation of .

Sample Input 1

5

Sample Output 1

1

Sample Input 2

13

Sample Output 2

2

Explanation

Sample Case 1:
The binary representation of  is , so the maximum number of consecutive ‘s is .

Sample Case 2:
The binary representation of  is , so the maximum number of consecutive ‘s is .

Logic:- For Day 10: Binary Numbers solution is divided into two part one is a binary number and second is consecutive 1’s. In the problem, we can see that we have to find that maximum number consecutive 1’s. in a Number. Means of consecutive number is continuing same number repeat maximum times. Below is the explanation of consecutive 1’s with an example.

Explanation:- For this problem, we are taking some number and also find the binary of all number after that we can find the maximum consecutive 1’s, take an example with a number between 1 to 15 and also write their binary number.

Number    binary    Maximum consecutive 1’s
0                0000         0
1                0001         1
2                0010         1
3                0011         2
4                0100         1
5                0101         1
6                0110         2
7                0111         3
8                1000         1
9                1001         1
10              1010         1
11              1011         2
12              1100         2
13              1101         2
14              1110         3
15              1111         4

As we can see that maximum consecutive 1’s in binary number are {15(4 consecutive 1’s), (14, 7(consecutive 1’s)), (3, 6, 11, 12, 13(consecutive 1’s)), (1, 2, 4, 5, 8, 9, 10(1 consecutive 1’s)), 0 (0 consecutive 1’s). And here n & 1 produces a value that is either 1 or 0, depending on the least significant bit of. This is a bitwise AND operation. or n >>= 1 means set n to itself shifted by one bit to the right. The expression evaluates to the new value of x after the shift.

Note:- We can see that maximum consecutive 1’s and maximum consecutive 0’s may be less and equal to binary number digit(maximum digit in binary number).

The solution provided here , is in C++ (CPP) if any reader wants this solutions in C, and Java comments below or sends a mail with your query like ” day n solution in C / C++ / Java. Check the end of the post solutions with the full explanation. You have a better solution and you want to publish your solution send the solution I will publish your post / Article with your name and one more thing you can add 2 backlinks + you can earn credits, this will help you if you have any website and blog. 

Solution :

#include <map>
#include <set>
#include <list>
#include <cmath>
#include <ctime>
#include <deque>
#include <queue>
#include <stack>
#include <string>
#include <bitset>
#include <cstdio>
#include <limits>
#include <vector>
#include <climits>
#include <cstring>
#include <cstdlib>
#include <fstream>
#include <numeric>
#include <sstream>
#include <iostream>
#include <algorithm>
#include <unordered_map>

using namespace std;

int main()
{
    int n,count=0,max=0;
    cin >> n;

    while(n)
    {
        if (n&1)
            count++;
        else 
            count = 0;
        if (max < count)
            max = count;
        n>>=1;
    }
    cout << max;

    return 0;
}
Hackerrank Solution For Day 10

Python 3 Code :

Problem:- Write a Hackerrank Solution For Day 10: Binary Numbers or Hacker Rank Solution Program In python For ” Day 10: Binary Numbers ” or Hackerrank 30 days of code python Solution: Day 10: Binary Numbers solution or Hackerrank solution for 30 Days of Code Challenges or Hackerrank 30 days of code python Solution, Day 10: Binary Numbers solution, or python Logic & Problem Solving: Day 10: Binary Numbers.

print(sorted(list(map(len,'{0:b}'.format(int(input().strip())).split("0"))),reverse=True)[0])

split string into substring.

Leave a Reply

Your email address will not be published.