제출 #868080

#제출 시각아이디문제언어결과실행 시간메모리
868080alexddRed-blue table (IZhO19_stones)C++17
0 / 100
420 ms3696 KiB
#include<bits/stdc++.h> using namespace std; int n,m; bool aux[1000005]; int fr[1000005]; bool verif(int cntl, int cntc) { if(min(cntl,(n-1)/2) * cntc + cntl * (m-cntc) < cntl * (m-(m-1)/2)) return 0; int cnt0 = (m-(m-1)/2) - (m-cntc); int cnt1 = cntc - cnt0; int st=1; for(int i=1;i<=m;i++) fr[i]=0; for(int i=1;i<=cntl;i++) { for(int j=1;j<=m;j++) aux[j]=0; for(int j=0;j<cnt0;j++) aux[((st+j-1)%m+1)]=1; for(int j=1;j<=m;j++) { if(!aux[j]) fr[j]++; } //cout<<"\n"; if(st==cntc) st=1; else st++; } for(int i=cntl+1;i<=n;i++) for(int j=1;j<=m;j++) fr[j]++; int cate=0; for(int i=1;i<=m;i++) { if(fr[i]>=n-(n-1)/2) cate++; } if(cate>=cntc) return 1; return 0; } void afis(int cntl, int cntc) { int cnt0 = (m-(m-1)/2) - (m-cntc); int cnt1 = cntc - cnt0; int st=1; for(int i=1;i<=cntl;i++) { for(int j=1;j<=m;j++) aux[j]=0; for(int j=0;j<cnt0;j++) aux[((st+j-1)%m+1)]=1; for(int j=1;j<=m;j++) { if(aux[j]) cout<<'+'; else cout<<'-'; } cout<<"\n"; if(st==cntc) st=1; else st++; } for(int i=cntl+1;i<=n;i++) { for(int j=1;j<=m;j++) cout<<'-'; cout<<"\n"; } } signed main() { ios_base::sync_with_stdio(0);cin.tie(0); int t; cin>>t; while(t--) { cin>>n>>m; int mxm=-1,carel,carec; for(int cntl=0;cntl<=n;cntl++) { for(int cntc=0;cntc<=m;cntc++) { if(cntl+cntc>mxm && verif(cntl,cntc)) { mxm=cntl+cntc; carel=cntl; carec=cntc; } } } //cout<<mxm<<" "<<carel<<" "<<carec<<"\n"; cout<<mxm<<"\n"; afis(carel,carec); } return 0; }

컴파일 시 표준 에러 (stderr) 메시지

stones.cpp: In function 'bool verif(int, int)':
stones.cpp:11:9: warning: unused variable 'cnt1' [-Wunused-variable]
   11 |     int cnt1 = cntc - cnt0;
      |         ^~~~
stones.cpp: In function 'void afis(int, int)':
stones.cpp:48:9: warning: unused variable 'cnt1' [-Wunused-variable]
   48 |     int cnt1 = cntc - cnt0;
      |         ^~~~
stones.cpp: In function 'int main()':
stones.cpp:99:13: warning: 'carec' may be used uninitialized in this function [-Wmaybe-uninitialized]
   99 |         afis(carel,carec);
      |         ~~~~^~~~~~~~~~~~~
stones.cpp:99:13: warning: 'carel' may be used uninitialized in this function [-Wmaybe-uninitialized]
#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...