제출 #173458

#제출 시각아이디문제언어결과실행 시간메모리
173458juggernautRed-blue table (IZhO19_stones)C++14
100 / 100
33 ms2296 KiB
//Just try and the idea will come!
#include<bits/stdc++.h>
using namespace std;
int t,n,m,cnt[1001];
bool a[1001][1001];
int run1(){
    int res=m,i,j,last=1,cur,mid;
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)a[i][j]=false,cnt[j]=n;
    for(i=1;i<=n;i++){
        cur=last;
        mid=(m>>1)+1;
        while(mid){
            if(cnt[cur]>n/2+1){
                cnt[cur]--;
                a[i][cur]=true;
                mid--;
            }
            cur++;
            if(cur==m+1)cur=1;
            if(cur==last)break;
        }
        if(mid==0)res++,last=cur;else break;
    }
    return res;
}
int run2(){
    int res=n,i,j,last=1,cur,mid;
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)a[i][j]=true,cnt[i]=m;
    for(i=1;i<=m;i++){
        cur=last;
        mid=(n>>1)+1;
        while(mid){
            if(cnt[cur]>m/2+1){
                cnt[cur]--;
                a[cur][i]=false;
                mid--;
            }
            cur++;
            if(cur==n+1)cur=1;
            if(cur==last)break;
        }
        if(mid==0)res++,last=cur;else break;
    }
    return res;
}
int main(){
    scanf("%d",&t);
    while(t--){
        scanf("%d%d",&n,&m);
        if(run1()>run2())printf("%d\n",run1());
        else printf("%d\n",run2());
        for(int i=1;i<=n;i++){
            for(int j=1;j<=m;j++)if(a[i][j])putchar('+');
            else putchar('-');
            puts("");
        }
    }
}

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

stones.cpp: In function 'int main()':
stones.cpp:49:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d",&t);
     ~~~~~^~~~~~~~~
stones.cpp:51:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d%d",&n,&m);
         ~~~~~^~~~~~~~~~~~~~
#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...