test 4 WA,求助
  • 板块CF3C Tic-tac-toe
  • 楼主KY2554
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/1/17 17:47
  • 上次更新2023/10/24 03:49:42
查看原帖
test 4 WA,求助
819213
KY2554楼主2023/1/17 17:47
#include<bits/stdc++.h>
using namespace std;
string a[3];
int x,y;
bool base,ana,anb;
int main(){
	for(int i=0;i<3;i++)cin>>a[i];
	for(int i=0;i<3;i++)
		for(int j=0;j<3;j++){
			if(a[i][j]=='X')x++;
			if(a[i][j]=='0')y++;
			if(a[i][j]=='.')base=1;
		}
	if((x-y)>1){cout<<"illegal";return 0;}
	if(y>x){cout<<"illegal";return 0;}
	if(base){
	if((x-y)==0){cout<<"first";return 0;}
	if((x-y)==1){cout<<"second";return 0;}
	}
	else{
		for(int i=0;i<3;i++)
		if(a[i][0]==a[i][1]&&a[i][2]==a[i][1]&&a[i][0]!='.'){
			if(a[i][0]=='X'&&x==y){cout<<"illegal";return 0;}
			if(a[i][0]=='0'&&x-y==1){cout<<"illegal";return 0;}
			if(a[i][0]=='X')ana=1;
			if(a[i][0]=='0')anb=1;
		}
	for(int j=0;j<3;j++)
		if(a[0][j]==a[1][j]&&a[0][j]==a[2][j]&&a[0][j]!='.'){
			if(a[0][j]=='X'&&x==y){cout<<"illegal";return 0;}
			if(a[0][j]=='0'&&x-y==1){cout<<"illegal";return 0;}
			if(a[0][j]=='X')ana=1;
			if(a[0][j]=='0')anb=1;
		}
	if(a[0][0]==a[1][1]&&a[2][2]==a[1][1]&&a[0][0]!='.'){
			if(a[0][0]=='X'&&x==y){cout<<"illegal";return 0;}
			if(a[0][0]=='0'&&x-y==1){cout<<"illegal";return 0;}
			if(a[0][0]=='X')ana=1;
			if(a[0][0]=='0')anb=1;
	}
	if(a[0][2]==a[1][1]&&a[2][0]==a[1][1]&&a[0][2]!='.'){
			if(a[0][2]=='X'&&x==y){cout<<"illegal";return 0;}
			if(a[0][2]=='0'&&x-y==1){cout<<"illegal";return 0;}
			if(a[2][0]=='X')ana=1;
			if(a[2][0]=='0')anb=1;
	}
	if(ana&&(!anb))cout<<"the first player won";
	if((!ana)&&anb)cout<<"the second player won";
	if(ana&&anb)cout<<"illegal";
	if((!ana)&&(!anb))cout<<"draw";
	}
	return 0;
}
2023/1/17 17:47
加载中...