Submission #370438

#TimeUsernameProblemLanguageResultExecution timeMemory
370438daniel920712"The Lyuboyn" code (IZhO19_lyuboyn)C++14
34 / 100
245 ms16424 KiB
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <vector> #include <stack> using namespace std; stack < int > t; vector < int > all; char tt[100005]; int N,K,T,S; int ans[1000005][25]; void F(int here) { int i,j; if(here==0) { all.push_back(0); all.push_back(1); } else if(here==N) { printf("%d\n",1<<N); for(auto i:all) { for(j=N-1;j>=0;j--) { if(i&(1<<j)) printf("1"); else printf("0"); } printf("\n"); } return; } else { for(auto i:all) t.push(i+(1<<here)); while(!t.empty()) { all.push_back(t.top()); t.pop(); } } F(here+1); } void F2(int here) { int i,j,now=0; if(here==0) { all.push_back(0); all.push_back(1); } else if(here==N) { for(auto i:all) { for(j=N-1;j>=0;j--) { if(i&(1<<j)) ans[now][N-j-1]=1; else ans[now][N-j-1]=0; if(now==0) { if(i&(1<<j)) ans[1<<N][N-j-1]=1; else ans[1<<N][N-j-1]=0; } } now++; } return; } else { for(auto i:all) t.push(i+(1<<here)); while(!t.empty()) { all.push_back(t.top()); t.pop(); } } F2(here+1); } int main() { int i,j,k,con; scanf("%d %d %d",&N,&K,&T); scanf("%s",tt); if(K%2==0||K>N||(K==N&&K!=1)) printf("-1\n"); else if(K==1) F(0); else if(K==3) { printf("%d\n",1<<N); F2(0); for(i=1;i<(1<<N);i+=2) { con=0; for(j=1;j<=4;j++) { if(ans[i][N-j]==ans[i-1][N-j]&&ans[i][N-j]==ans[i+1][N-j]) { ans[i][N-j]=1-ans[i][N-j]; con++; if(con>=2) break; } } } for(i=0;i<(1<<N);i++) { for(j=0;j<N;j++) printf("%d",ans[i][j]); printf("\n"); } } return 0; } /* 01001 01000 11000 */

Compilation message (stderr)

lyuboyn.cpp: In function 'void F(int)':
lyuboyn.cpp:15:9: warning: unused variable 'i' [-Wunused-variable]
   15 |     int i,j;
      |         ^
lyuboyn.cpp: In function 'void F2(int)':
lyuboyn.cpp:49:9: warning: unused variable 'i' [-Wunused-variable]
   49 |     int i,j,now=0;
      |         ^
lyuboyn.cpp: In function 'int main()':
lyuboyn.cpp:88:13: warning: unused variable 'k' [-Wunused-variable]
   88 |     int i,j,k,con;
      |             ^
lyuboyn.cpp:89:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   89 |     scanf("%d %d %d",&N,&K,&T);
      |     ~~~~~^~~~~~~~~~~~~~~~~~~~~
lyuboyn.cpp:90:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   90 |     scanf("%s",tt);
      |     ~~~~~^~~~~~~~~
#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...