QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#152520 | #6309. Aqre | chen_zexing | WA | 1ms | 3788kb | C++17 | 2.5kb | 2023-08-28 11:00:45 | 2023-08-28 11:00:45 |
Judging History
answer
#pragma GCC optimize("Ofast,unroll-loops")
#include <bits/stdc++.h>
using namespace std;
int a[1005][1005];
int main() {
int T = 1, kase = 0;
cin >> T;
while (T--) {
int n, m;
cin >> n >> m;
if (n <= 3 && m <= 3) {
printf("%d\n", n * m);
for (int i = 1; i <= n; i++, puts(""))
for (int j = 1; j <= m; j++)
printf("1");
}
else if (n == 3) {
int ans=m/4*9+m%4*3-(m%4>1);
printf("%d\n",ans);
for(int i=1;i<=n;i++,puts(""))
for(int j=1;j<=m;j++){
if(j%4==2&&i==3||j%4==0&&i!=3) printf("0");
else printf("1");
}
}
else if (m == 3) {
int ans=n/4*9+n%4*3-(n%4>1);
printf("%d\n",ans);
for(int i=1;i<=n;i++,puts(""))
for(int j=1;j<=m;j++){
if(i%4==2&&j==3||i%4==0&&j!=3) printf("0");
else printf("1");
}
}
else {
int ans = 0;
for (int i = 1; i <= n; i++) {
if (i % 4 == 1) ans += m / 4 * 3 + m % 4;
else if (i % 4 == 2) ans += m / 4 * 3 + m % 4 - (m % 4 > 1);
else if (i % 4 == 3) ans += m / 4 * 3 + m % 4 - (m % 4 > 2);
else ans += m / 4 * 3 + m % 4 - (m%4>0);
}
if(n%4==2&&m%4==2) ans++;
printf("%d\n", ans);
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++) {
if(i%4==2&&j%4==2&&i==n){
if(j%4==3) a[i][j]=0;
else a[i][j]=1;
continue;
}
if (i % 4 == 1 && j % 4 == 0 || i % 4 == 2 && j % 4 == 2 || i % 4 == 3 && j % 4 == 3 ||
i % 4 == 0 && j % 4 == 1)
a[i][j]=0;
else a[i][j]=1;
}
if(n%4==1&&m%4==1||n%4==2&&m%4==2){
for(int i=2;i+2<=n;i+=4)
for(int j=1;j<=m;j++){
int ov=a[i][j];
a[i][j]=a[i+1][j],a[i+1][j]=a[i+2][j],a[i+2][j]=ov;
}
}
for(int i=1;i<=n;i++,puts(""))
for(int j=1;j<=m;j++)
printf("%d",a[i][j]);
}
}
return 0;
}
/*
11101
11011
01110
10111
11101
*/
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 3760kb
input:
3 2 2 3 4 3 8
output:
4 11 11 9 1110 1110 1011 18 11101110 11101110 10111011
result:
ok ok (3 test cases)
Test #2:
score: -100
Wrong Answer
time: 1ms
memory: 3788kb
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 6 111 111 6 1110 1111 8 11101 11111 10 111011 111111 11 1110111 1111111 12 11101110 11111111 14 111011101 111111111 16 1110111011 1111111111 17 11101110111 11111111111 18 111011101110 111111111111 20 1110111011101 1111111111111 22 11101110111011 11111111111111 23 111011101110111 111111111111...
result:
wrong answer (1, 0) to (1, 3) are the same (test case 3)