QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#115212#5956. Paradox SortPittow0 170ms1748kbC++14909b2023-06-25 09:04:312023-06-25 09:04:33

Judging History

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

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-06-25 09:04:33]
  • 评测
  • 测评结果:0
  • 用时:170ms
  • 内存:1748kb
  • [2023-06-25 09:04:31]
  • 提交

answer

#include<cstdio>
int T,n,k,i,j,a[104][104];
bool b[104],v[104];//confirmed,visited
void dfs(int g){
	v[g]=0;
	for(int i=0;i<n;++i)if(v[i]&&a[g][i])dfs(i);
}bool check(int cu,int de){
	if(cu==n||a[de][cu])cu=de;
	b[de]=0;
	for(int i=0;i<n;++i)v[i]=b[i];
	if(b[k])dfs(k);
	b[de]=1;
	if(cu<n)for(int i=0;i<n;++i)if(a[cu][i])v[i]=0;
	for(int i=0;i<n;++i)if(b[i]&&v[i])return 0;
	return 1;
}int main(){
	scanf("%d",&T);
	for(int t=0;t<T;++t){
		scanf("%d%d",&n,&k);
		for(i=0;i<n;++i)
		for(j=0;j<n;++j)if(i!=j){
			char c;
			while(c=getchar(),c!='Y'&&c!='N');
			a[i][j]=c=='Y';
		}getchar();
		printf("Case #%d :",t+1);
		for(i=0;i<n;++i)b[i]=1;
		int cur=n;
		if(!check(n,n)){printf("IMPOSSIBLE");goto end;}
		for(i=0;i<n;++i){
			for(j=0;j<n;++j)
				if(b[j]&&check(cur,j))goto aha;
			aha:b[j]=0;printf("%d ",j);
			if(i==0||a[j][cur])cur=j;
		}end:puts("");
	}return 0;
}

详细

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 0
Wrong Answer
time: 1ms
memory: 1496kb

input:

100
3 0
-YN
N-Y
YN-
2 0
-Y
N-
5 0
-YNNN
N-YNN
YN-YN
YYN-Y
YYYN-
5 1
-NYYY
Y-NNN
NY-NY
NYY-N
NYNY-
6 5
-YYNNY
N-YYNY
NN-NYN
YNY-NY
YYNY-Y
NNYNN-
4 0
-YYY
N-YN
NN-N
NYY-
2 0
-Y
N-
5 1
-NYNY
Y-YYY
NN-YY
YNN-N
NNNY-
7 5
-YYYYYY
N-NNYYN
NY-YNNN
NYN-NYN
NNYY-NN
NNYNY-N
NYYYYY-
8 0
-YNNNNNN
N-YNNNNN
YN-YNN...

output:

Case #1 :1 2 0 
Case #2 :0 1 
Case #3 :3 4 2 1 0 
Case #4 :0 2 3 4 1 
Case #5 :0 1 3 4 2 5 
Case #6 :0 1 2 3 
Case #7 :0 1 
Case #8 :0 1 2 3 4 
Case #9 :IMPOSSIBLE
Case #10 :6 7 5 4 3 2 1 0 
Case #11 :0 1 2 
Case #12 :0 1 
Case #13 :0 1 
Case #14 :IMPOSSIBLE
Case #15 :IMPOSSIBLE
Case #16 :7 8 6 5 4 ...

result:

wrong answer 1st lines differ - expected: 'Case #1: 1 2 0', found: 'Case #1 :1 2 0 '

Subtask #2:

score: 0
Wrong Answer

Test #2:

score: 0
Wrong Answer
time: 170ms
memory: 1748kb

input:

100
39 0
-YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
N-YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
YN-YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
YYN-YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
YYYN-YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
YYYYN-YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
YYYYYN-YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
YYYYYYN-YNN...

output:

Case #1 :37 38 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 
Case #2 :0 13 23 28 30 34 38 40 41 42 43 46 49 51 52 33 5 1 17 32 15 29 19 10 16 47 48 9 4 27 6 7 18 31 8 11 26 50 3 37 25 35 45 20 24 39 22 12 44 36 2 21 14 
Case #3 :0 1 2 3 4 5 6 8...

result:

wrong answer 1st lines differ - expected: 'Case #1: 37 38 36 35 34 33 32 ...13 12 11 10 9 8 7 6 5 4 3 2 1 0', found: 'Case #1 :37 38 36 35 34 33 32 ...3 12 11 10 9 8 7 6 5 4 3 2 1 0 '