In this HackerEarth Micro and Binary Strings problem solution, Micro's wife Mini gave him a bag having N strings of length N. All the strings are binary i.e. made up of 1's and 0's only. All the strings in the bag can be generated by a string S by simply performing the right rotations N times. For example, if S is "101", then the strings in the bag will be "110", "011", "101". Now Mini wants to know the number of ways of selecting one string from the bag with an odd decimal equivalent. Micro got very confused by all this, so he asked for your help.


Hackerearth Micro and Binary Strings problem solution


HackerEarth Micro and Binary Strings problem solution.

#include<bits/stdc++.h>
using namespace std;

int main(){ 
    int t;cin>>t;
    while(t--){
        int n;cin>>n;
        string str="";cin>>str;
        int ans = 0;
        for(int i=0; i<str.length(); i++)if(str[i] == '1')ans++;
        cout<<ans<<endl;
    }
    return 0;
}

Second solution

#include<bits/stdc++.h>

using namespace std;

int tests;
string st;

int main(){

    cin >> tests;

    for (; tests; --tests)
    {
        int trash;
        cin >> trash;
        cin >> st;
        int res = 0;

        for (int i = 0; i < st.size(); i++)
        {
            if (st[i] == '1')
                ++res;
        }
        cout << res << endl;
    }

    return 0;
}