PROBLEM LINK:Author: Praveen Dhinwa PROBLEMGiven a binary string of length $8$. Make the string circular. Count number of places where adjacent bits are different. Print "Uniform" if this count $\le 2$ EXPLANATIONSince this problem was a cakewalk, it is quite straightforward to code. There is quite less to explain apart from giving some observations. Bruteforce C++
Bruteforce Python
Random observationsTo have $count=0$ the string must have $8\space 0's$ or $8\space 1's$. It is not possible to have $count=1$. To have $count = 2$, the string must have exactly one $1$ or exactly one $0$. So for this problem the total number of $1$ in the string can be $0, 1, 7, 8$. AUTHOR'S AND TESTER'S SOLUTIONS:Author's solution can be found here.
This question is marked "community wiki".
asked 13 Jan, 17:59

**include<iostream.h> void main() { int s[10],c=0; for(int i=0;i<8;i++) { if (s[i]!=s[i+1]) { c=c+1 } } if(c<=2) { cout<<"uniform";} else cout<<"nonuniform"; } answered 18 Jan, 22:40

include<bits stdc++.h="">using namespace std; int main() { int t; cin>>t; while(t) { string s; cin>>s; int x=unique(s.begin(),s.end())s.begin(); if(x<=3) { cout<<"uniform\n"; } else { cout<<"nonuniform\n"; } } return 0; } answered 05 Dec, 21:11
