QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#102594#6309. AqrekingsnowWA 2ms3816kbC++142.3kb2023-05-03 14:55:082023-05-03 14:55:12

Judging History

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

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

answer

//#pragma GCC optimize(3,"Ofast","inline")
//#pragma GCC optimize("-Ofast","-funroll-all-loops")
#include<bits/stdc++.h>
//#define getchar nc
#define sight(c) ('0'<=c&&c<='9')
#define swap(a,b) a^=b,b^=a,a^=b
#define LL long long
#define debug(a) cout<<#a<<" is "<<a<<"\n"
#define dput(a) puts("a")
#define eho(x) for(int i=head[x];i;i=net[i])
#define fi first
#define se second
inline char nc(){
static char buf[1000000],*p1=buf,*p2=buf;
return p1==p2&&(p2=(p1=buf)+fread(buf,1,1000000,stdin),p1==p2)?EOF:*p1++;
}
template <class T>
inline void read(T &x){// unsigned
    static char c;
    for (c=getchar();!sight(c);c=getchar());
    for (x=0;sight(c);c=getchar())x=x*10+c-48;
}
template <class T> void write(T x){if (x<10) {putchar('0'+x); return;} write(x/10); putchar('0'+x%10);}
template <class T> inline void writeln(T x){ if (x<0) putchar('-'),x*=-1; write(x); putchar('\n'); }
template <class T> inline void writel(T x){ if (x<0) putchar('-'),x*=-1; write(x); putchar(' '); }
using namespace std;
int n,m,T;
int c[3][4]={{1,1,1,0},{1,0,1,1},{1,1,1,0}};
int e[4][4]={{1,1,1,0},{1,0,1,1},{1,1,0,1},{0,1,1,1}};
int f[4][4]={{1,1,0,1},{1,1,1,0},{1,0,1,1},{0,1,1,1}};
int ans[1007][1007];
signed main() {
	#ifdef LOCAL
	//	freopen("test.in", "r", stdin);
	//	freopen("test.out", "w", stdout);
	#endif
	scanf("%d",&T);
	while (T--) {
		scanf("%d%d",&n,&m);
		if (n<4&&m<4) {
			printf("%d\n",n*m);
			for (int i=0;i<n;i++,puts(""))
				for (int j=0;j<m;j++)
				 printf("%d",1);
		} else if (n==3&&m%4==3) {
			printf("%d\n",9*(m+1)/4-1);
			for (int i=0;i<3;i++,puts(""))
				for (int j=0;j<m;j++)
				 printf("%d",c[i][j%4]);
		} else if (n%3==0&&m==3) {
			printf("%d\n",9*(n+1)/4-1);
			for (int i=0;i<n;i++,puts(""))
				for (int j=0;j<3;j++)
				 printf("%d",c[j][i%4]);
		} else {
			int anw=0;
//			printf("%d\n",n*m-n*m/4-(n*m%4==0?0:1));
			int flag=((n%4<=2)&&(m%4<=2));
			if (!flag)
			for (int i=0;i<n;i++)
				for (int j=0;j<m;j++)
				  ans[i][j]=e[i%4][j%4],anw+=ans[i][j];
			else 
			for (int i=0;i<n;i++)
				for (int j=0;j<m;j++)
				  ans[i][j]=f[i%4][j%4],anw+=ans[i][j];
			printf("%d\n",anw);
			for (int i=0;i<n;i++,puts(""))
				for (int j=0;j<m;j++)
					printf("%d",ans[i][j]); 
		}
	} 
    return 0;
}
// CFIJM

详细

Test #1:

score: 100
Accepted
time: 2ms
memory: 3484kb

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: 3816kb

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
1101
1110
8
11011
11101
10
110111
111011
11
1110111
1011101
12
11011101
11101110
14
110111011
111011101
16
1101110111
1110111011
17
11101110111
10111011101
18
110111011101
111011101110
20
1101110111011
1110111011101
22
11011101110111
11101110111011
23
111011101110111
101110111011...

result:

wrong answer 1s are not connected. (test case 3)