Submission #343820

#TimeUsernameProblemLanguageResultExecution timeMemory
343820Tosic"The Lyuboyn" code (IZhO19_lyuboyn)C++14
33 / 100
1093 ms23520 KiB
#include <bits/stdc++.h> #define maxn 400010 using namespace std; int n, k, t, ans; vector<int> curR,masks; bool was[maxn]; int bD(int a, int b){ return __builtin_popcount(a^b)==k; } void printR(){ cout << (1<<n) << '\n'; for(auto i : curR){ bitset<32> tmp = i; //cout << tmp; for(int j = n-1; j >= 0; --j){ cout << tmp[j]; } cout << '\n'; } exit(0); } void getR(int x){ if(x == (1<<n)){ if(t == 1 and bD(curR[0],curR.back())){ printR(); } if(!t and !bD(curR[0],curR.back())){ printR(); } return; } if(was[curR.back()]){ return; } was[curR.back()] = 1; for(auto i : masks){ curR.push_back(curR.back()^i); getR(x+1); curR.pop_back(); } was[curR.back()] = 0; } int main(){ ios_base::sync_with_stdio(0); cout.tie(0); cin.tie(0); string s; cin >> n >> k >> t >> s; int res = 0; for(int i =0 ; i < s.length(); ++i){ res *= 2; res += (s[i]-'0'); } for(int i = 0; i < (1<<n); ++i){ if(bD(0, i)){ masks.push_back(i); } } curR.push_back(res); getR(1); cout << -1; }

Compilation message (stderr)

lyuboyn.cpp: In function 'int main()':
lyuboyn.cpp:56:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   56 |  for(int i =0 ; i < s.length(); ++i){
      |                 ~~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...