为什么我wa了两个点
查看原帖
为什么我wa了两个点
533419
北航姜广20376155楼主2021/7/18 11:32

代码奉上

#include<stdio.h>
#include<math.h>
#include<stdlib.h>
int i,j;
int f;
int a[2][2],b[2][2];
void move();
int is();
int main(){
	for(i=0;i<2;i++)
		for(j=0;j<2;j++)
			scanf("%d",&a[i][j]);
	for(i=0;i<2;i++)
		for(j=0;j<2;j++)
			scanf("%d",&b[i][j]);
	for(i=0;i<11;i++){
		if(is()){
			f=1;
			break;
		}
		move();
	}
	if(f)printf("Yes\n");
	else printf("No\n");
	return 0;
}
void move(){
	if(a[0][0]==0){
		a[0][0]=a[0][1];
		a[0][1]=0;
	}else if(a[0][1]==0){
		a[0][1]=a[1][1];
		a[1][1]=0;
	}else if(a[1][0]==0){
		a[1][0]=a[0][0];
		a[0][0]=0;
	}else if(a[1][1]==0){
		a[1][1]=a[1][0];
		a[1][0]=0;
	}
}
int is(){
	int i,j;
	for(i=0;i<2;i++)
		for(j=0;j<2;j++)
			if(a[i][j]!=b[i][j])
				return 0;
	return 1;
}
2021/7/18 11:32
加载中...