Submission #164080

#TimeUsernameProblemLanguageResultExecution timeMemory
164080dandrozavr"The Lyuboyn" code (IZhO19_lyuboyn)C++14
100 / 100
583 ms37644 KiB
/* Uruchamiamy samolot zwiadowczy ( + 500% do wzlamaniej ) /▄/ /█/ /🔥/ /▐/ /▌/ /▀/ /░/ /◐ / choose your own style ***IT'S OUR LONG WAY TO THE OIILLLL*** ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█████████░░░░░░░░░░░░░░░░░▌░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░◐◐◐█████████▀▀▀▀▀▀🔥░░░░░░░░███░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█████████░░░░░░░░░░░░░░░░░░░░▌░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█████████░░░░░░░░░░░░░░░░░░░░█▌░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▄▄▀██████████████████████████████████████████████████ ░░░░░░░░░░░░░░░░░░░░░░░░░░▄▄▄████▄████████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ █████ ░░░░░░░░░░░░░░░░░░░░░░░░░░░▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█████████▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█████████░░░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░◐◐◐█████████▀▀▀▀▀▀🔥░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█████████░░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█████████░░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░███████░░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██████░░░░░░░░░░░░░░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█████░░░░░░░░░░░░░░░ */ //#pragma GCC optimize("Ofast") //#pragma GCC target("sse,sse2,sse3,ssse3,sse4") #include <bits/stdc++.h> //#include <grader.cpp> using namespace std; #include <ext/pb_ds/detail/standard_policies.hpp>' #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace __gnu_pbds;template <typename T> using ordered_set = tree <T, null_type, less< T >, rb_tree_tag,tree_order_statistics_node_update>; #define pb push_back #define ll long long #define ld long double #define fi first #define se second #define pii pair < ll , int > #define pipii pair< int, pair < int , int > > #define siz(n) (int)(n.size()) #define TIME 1.0 * clock() / CLOCKS_PER_SEC mt19937 gen(chrono::high_resolution_clock::now().time_since_epoch().count()); const int inf=1e9 + 7; const ll inf18=1e18 + 7; const int N=1e6 + 7; const int MN = 2097152; const int M = 1e9 + 7; vector < vector < int > > all; void rec(vector < int > a, int now, int n) { if (!now) { all.pb(a); return; } int st = 0; if (a.size()) st = a.back() + 1; for (int i = st; i < n; ++i) { a.pb(i); rec(a, now - 1, n); a.pop_back(); } } int main() { ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); srand(time(0)); #ifdef Estb_probitie freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif int n, k, t; cin >> n >> k >> t; if (k % 2 == 0) { cout << -1; return 0; } unordered_set < string > s; vector < int > non; rec(non, k, n); string q, inp; cin >> inp; // for (int i = 0; i < n; ++i) q+= char('0'); q = inp; s.insert(q); cout << (1 << n) << endl; while(s.size() <= (1 << n)) { cout<<q<<'\n'; if (s.size() == (1 << n)) return 0; bool byl = 0; vector < int > ch; for (int i = 0; i < q.size(); ++i) ch.pb(i); for (auto ch : all) { string z = q; for (int j = 0; j < k; ++j) z[ch[j]] = !(z[ch[j]] - 48) + '0'; if (!s.count(z)) { s.insert(z); q = z; byl =1; break; } } if (!byl) break; } }

Compilation message (stderr)

lyuboyn.cpp:36:50: warning: missing terminating ' character
 #include <ext/pb_ds/detail/standard_policies.hpp>'
                                                  ^
lyuboyn.cpp:36:50: warning: extra tokens at end of #include directive
lyuboyn.cpp: In function 'int main()':
lyuboyn.cpp:108:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     while(s.size() <= (1 << n))
           ~~~~~~~~~^~~~~~~~~~~
lyuboyn.cpp:111:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if (s.size() == (1 << n)) return 0;
             ~~~~~~~~~^~~~~~~~~~~
lyuboyn.cpp:114:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for (int i = 0; i < q.size(); ++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...