QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#127649#6644. Red Black GridNettWA 1ms3728kbC++141.1kb2023-07-19 21:35:072023-07-19 21:35:08

Judging History

This is the latest submission verdict.

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-07-19 21:35:08]
  • Judged
  • Verdict: WA
  • Time: 1ms
  • Memory: 3728kb
  • [2023-07-19 21:35:07]
  • Submitted

answer

#include<bits/stdc++.h>
using namespace std;
int t;
int n;
int k;
int s2,s3,s4,ans2,ans3,ans4;
bool sj(int x,int y)
{
	return (x==1||x==n)&&(y==1||y==n);
}
bool bian(int x,int y)
{
	return x==1||x==n||y==1||y==n;
}
int main()
{
	scanf("%d",&t);
	while(t--)
	{
		scanf("%d%d",&n,&k);
		if(k==1||k==2*n*(n-1)-1)
		{
			puts("Impossible");
			continue;
		}
		puts("Possible");
		s2=s3=s4=0;
		for(int i=1;i<=n;i++)
		{
			for(int j=1;j<=n;j++)
			{
				if(((i+j)&1)==0)
				{
					if(sj(i,j))
						s2++;
					else if(bian(i,j))
						s3++;
					else s4++;
				}
			}
		}
		k=2*n*(n-1)-k;
		ans3=min(s3,k/3);
		k-=ans3*3;
		if(k%3==1)
			ans3--,k+=3;
		ans4=min(s4,k/4);
		k-=ans4*4;
		ans2=k/2;
		for(int i=1;i<=n;i++)
		{
			for(int j=1;j<=n;j++)
			{
				int flag=0;
				if(((i+j)&1)==0)
				{
					if(sj(i,j)&&ans2)
					{
						ans2--;
						flag=1;
					}
					else if(bian(i,j)&&ans3)
					{
						ans3--;
						flag=1;
					}
					else if(ans4&&(!sj(i,j))&&(!bian(i,j)))
					{
						ans4--;
						flag=1;
					}
				}
				putchar(flag ? 'B' :'R');
			}
			puts("");
		}
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

input:

2
3 6
3 1

output:

Possible
BRR
RBR
RRR
Impossible

result:

ok correct! (2 test cases)

Test #2:

score: -100
Wrong Answer
time: 1ms
memory: 3728kb

input:

4424
1 0
2 4
2 3
2 2
2 1
2 0
3 12
3 11
3 10
3 9
3 8
3 7
3 6
3 5
3 4
3 3
3 2
3 1
3 0
4 24
4 23
4 22
4 21
4 20
4 19
4 18
4 17
4 16
4 15
4 14
4 13
4 12
4 11
4 10
4 9
4 8
4 7
4 6
4 5
4 4
4 3
4 2
4 1
4 0
5 40
5 39
5 38
5 37
5 36
5 35
5 34
5 33
5 32
5 31
5 30
5 29
5 28
5 27
5 26
5 25
5 24
5 23
5 22
5 21
5...

output:

Possible
R
Possible
RR
RR
Impossible
Possible
BR
RR
Impossible
Possible
BR
RB
Possible
RRR
RRR
RRR
Impossible
Possible
BRR
RRR
RRR
Possible
BRR
RRR
RRR
Possible
BRB
RBR
BRB
Possible
RRR
RBR
RRR
Possible
BRR
RBR
RRR
Possible
BRB
RBR
BRB
Possible
BRB
RBR
RRR
Possible
BRB
RBR
RRR
Possible
BRB
RBR
BRB
I...

result:

wrong answer Condition failed: "getNum(vec) == k" (test case 2)