QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#99061#6309. Aqreshr_WA 2ms3700kbC++141.2kb2023-04-21 10:03:492023-04-21 10:03:52

Judging History

你现在查看的是最新测评结果

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-04-21 10:03:52]
  • 评测
  • 测评结果:WA
  • 用时:2ms
  • 内存:3700kb
  • [2023-04-21 10:03:49]
  • 提交

answer

# include <bits/stdc++.h>
using namespace std;
const int kl[4][4]={{1,1,1,0},{1,0,1,1},{1,1,0,1},{0,1,1,1}};
int T,n,m,ans[1010][1010];
int main() {
//    freopen("in.in","r",stdin);
//    freopen("out.out","w",stdout);

    scanf("%d",&T);
    
    while (T--) {
        scanf("%d%d",&n,&m);

        int x=0,y=0,tot=0,l=n%4,r=m%4;
        if (l==0||r==0) x=0, y=0, tot=n*m/4*3;
        else if (l==1&&r==1) x=3, y=3, tot=(n*m-1)/4*3+1;
        else if (l==1&&r==2) x=3, y=2, tot=(n*m-2)/4*3+2;
        else if (l==2&&r==1) x=2, y=3, tot=(n*m-2)/4*3+2;
        else if (l==1&&r==3) x=3, y=1, tot=(n*m-3)/4*3+3;
        else if (l==3&&r==1) x=1, y=3, tot=(n*m-3)/4*3+3;
        else if (l==2&&r==2) x=3, y=1, tot=(n*m-4)/4*3+4;
        else if (l==2&&r==3) x=2, y=1, tot=(n*m-6)/4*3+5;
        else if (l==3&&r==2) x=1, y=2, tot=(n*m-6)/4*3+5;
        else if (l==3&&r==3) x=1, y=1, tot=(n*m-9)/4*3+7;

        for (int i=1;i<=n;i++) for (int j=1;j<=m;j++) ans[i][j]=kl[(i-1+x)%4][(j-1+y)%4];

        printf("%d\n",tot);
        for (int i=1;i<=n;i++) {
            for (int j=1;j<=m;j++) printf("%d",ans[i][j]);
            printf("\n");
        }
    }

    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3632kb

input:

3
2 2
3 4
3 8

output:

4
11
11
9
1110
1011
1101
18
11101110
10111011
11011101

result:

ok ok (3 test cases)

Test #2:

score: -100
Wrong Answer
time: 2ms
memory: 3700kb

input:

361
2 2
2 3
2 4
2 5
2 6
2 7
2 8
2 9
2 10
2 11
2 12
2 13
2 14
2 15
2 16
2 17
2 18
2 19
2 20
3 2
3 3
3 4
3 5
3 6
3 7
3 8
3 9
3 10
3 11
3 12
3 13
3 14
3 15
3 16
3 17
3 18
3 19
3 20
4 2
4 3
4 4
4 5
4 6
4 7
4 8
4 9
4 10
4 11
4 12
4 13
4 14
4 15
4 16
4 17
4 18
4 19
4 20
5 2
5 3
5 4
5 5
5 6
5 7
5 8
5 9
5 1...

output:

4
11
11
5
101
111
6
1110
1011
8
11101
10111
10
111011
110111
11
1011101
1110111
12
11101110
10111011
14
111011101
101110111
16
1110111011
1101110111
17
10111011101
11101110111
18
111011101110
101110111011
20
1110111011101
1011101110111
22
11101110111011
11011101110111
23
101110111011101
111011101110...

result:

wrong answer ans finds a larger answer (test case 2)