Submission #499797

#TimeUsernameProblemLanguageResultExecution timeMemory
499797NachoLibre"The Lyuboyn" code (IZhO19_lyuboyn)C++17
100 / 100
60 ms7432 KiB
#include <bits/stdc++.h> #define ll long long #define ld long double #define sz(x) ((int)(x).size()) #define all(x) (x).begin(), (x).end() using namespace std; string str(int x, int n) { string s; for(int i = n - 1; i >= 0; --i) { s += '0' + !!(x & 1 << i); } return s; } int num(string s) { int x = 0; for(int i = 0; i < sz(s); ++i) { x <<= 1; x |= s[i] == '1'; } return x; } int main() { ios::sync_with_stdio(0); cin.tie(0); int n, k, t; string S; cin >> n >> k >> t >> S; int s = num(S); if(k % 2 == 0) return cout << -1 << endl, 0; vector<int> v{0}; for(int i = 1; i < k + 1; ++i) { v.push_back(i); for(int j = sz(v) - 2; j >= 0; --j) { v.push_back(v[j]); } } vector<int> fp{0}; for(int i : v) { fp.push_back(fp.back() ^ (1 << k + 1) - 1 ^ 1 << i); } for(int i = k + 1; i < n; ++i) { for(int j = sz(fp) - 1; j >= 0; --j) { fp.push_back(fp[j] ^ 1 << i ^ (1 << k - 1) - 1); } } cout << (1 << n) << endl; for(int x : fp) { cout << str(x ^ s, n) + "\n"; } return 0; }

Compilation message (stderr)

lyuboyn.cpp: In function 'int main()':
lyuboyn.cpp:36:36: warning: suggest parentheses around '+' inside '<<' [-Wparentheses]
   36 |   fp.push_back(fp.back() ^ (1 << k + 1) - 1 ^ 1 << i);
      |                                  ~~^~~
lyuboyn.cpp:36:41: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
   36 |   fp.push_back(fp.back() ^ (1 << k + 1) - 1 ^ 1 << i);
      |                            ~~~~~~~~~~~~~^~~
lyuboyn.cpp:40:42: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
   40 |    fp.push_back(fp[j] ^ 1 << i ^ (1 << k - 1) - 1);
      |                                        ~~^~~
lyuboyn.cpp:40:47: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
   40 |    fp.push_back(fp[j] ^ 1 << i ^ (1 << k - 1) - 1);
      |                                  ~~~~~~~~~~~~~^~~
#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...