Submission #869137

#TimeUsernameProblemLanguageResultExecution timeMemory
869137alexdd"The Lyuboyn" code (IZhO19_lyuboyn)C++17
19 / 100
1062 ms10580 KiB
#include<bits/stdc++.h> using namespace std; bool used[265000]; int n,k,t,s; bool dif[20]; void afis01(int x) { for(int i=n-1;i>=0;i--) { if(((1<<i)&x)) cout<<1; else cout<<0; } cout<<"\n"; } bool rez[265000][20]; void solve_k1() { for(int i=0;i<n-1;i++) { for(int j=(1<<i);j<(1<<n);j+=(1<<(i+2))) { for(int p=0;p<(1<<(i+1));p++) rez[j+p][i]=1; } } for(int i=(1<<(n-1));i<(1<<n);i++) rez[i][n-1]=1; cout<<(1<<n)<<"\n"; for(int i=0;i<(1<<n);i++) { for(int j=n-1;j>=0;j--) { cout<<rez[i][j]; } cout<<"\n"; } } signed main() { ios_base::sync_with_stdio(0);cin.tie(0); cin>>n>>k>>t>>s; if(k%2==0) { cout<<-1; return 0; } if(k==1) { solve_k1(); return 0; } used[s]=1; for(int i=0;i<k;i++) dif[i]=1; for(int i=k;i<n;i++) dif[i]=0; cout<<(1<<n)<<"\n"; afis01(s); for(int i=1;i<(1<<n);i++) { while(1) { random_shuffle(dif,dif+n); int aux=s; for(int j=0;j<n;j++) { if(dif[j]) aux = aux ^ (1<<j); } if(!used[aux]) { s=aux; used[s]=1; afis01(s); break; } } } return 0; }
#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...