Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- #define ll long long
- #define ld long double
- #define pb push_back
- #define p_b pop_back
- #define si stack<int>
- #define sll stack<ll>
- #define sc stack<char>
- #define vi vector<int>
- #define vll vector<ll>
- #define mii map<int, int>
- #define msi map<string, int>
- #define mci map<char, int>
- #define qc queue<char>
- #define qi queue<int>
- #define qll queue<ll>
- using namespace std;
- ll power(int n, int b){
- int a = 1;
- for(int i = 0; i < b; i++){
- a *= n;
- }
- return a;
- }
- int main(){
- ios_base::sync_with_stdio(false);
- cin.tie(NULL);
- string s, t;
- while(cin >> t){
- if(t[t.length()-1] != '#'){
- s += t;
- } else{
- s += t.substr(0, t.length()-1);
- map<ll, int> m;
- for(int i = 1; i <= power(2, 16); i *= 2){
- m.insert({i, 0});
- }
- for(int i = 0; i < s.length(); i++){
- if(s[i] == '1'){
- m[power(2, (s.length()-i-1)%17)]++;
- }
- }
- bool f = true;
- for(int i = 1; i <= power(2, 15); i *= 2){
- if(m[i] != m[2*i]){
- f = false;
- break;
- }
- }
- if(f){
- cout << "YES\n";
- } else{
- cout << "NO\n";
- }
- s = "";
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement