疯了!第四个点总是错
  • 板块P1838 三子棋I
  • 楼主Yuzilihhh
  • 当前回复13
  • 已保存回复13
  • 发布时间2022/12/30 17:58
  • 上次更新2023/10/24 06:06:18
查看原帖
疯了!第四个点总是错
567522
Yuzilihhh楼主2022/12/30 17:58
#include<bits/stdc++.h>
using namespace std;
int n,a[5][5],s[10],l,k;
bool ca()
{
	if(a[1][1]==2&&a[1][2]==2&&a[1][3]==2)
		return true;
	if(a[1][1]==2&&a[2][1]==2&&a[3][1]==2)
		return true;
	if(a[3][1]==2&&a[3][2]==2&&a[3][3]==2)
		return true;
	if(a[1][3]==2&&a[2][3]==2&&a[3][3]==2)
		return true;
	if(a[2][2]==2)
	{
		if(a[1][1]==2&&a[3][3]==2)
			return true;
		if(a[1][3]==2&&a[3][1]==2)
			return true;
		if(a[2][1]==2&&a[2][3]==2)
			return true;
		if(a[1][2]==2&&a[3][2]==2)
			return true;
	}
	return false;
}
bool cu()
{
	if(a[1][1]==1&&a[1][2]==1&&a[1][3]==1)
		return true;
	if(a[1][1]==1&&a[2][1]==1&&a[3][1]==1)
		return true;
	if(a[3][1]==1&&a[3][2]==1&&a[3][3]==1)
		return true;
	if(a[1][3]==1&&a[2][3]==1&&a[3][3]==1)
		return true;
	if(a[2][2]==1)
	{
		if(a[1][1]==1&&a[3][3]==1)
			return true;
		if(a[1][3]==1&&a[3][1]==1)
			return true;
		if(a[2][1]==1&&a[2][3]==1)
			return true;
		if(a[1][2]==1&&a[3][2]==1)
			return true;
	}
	return false;
}
int main()
{
	cin>>n;
	while(n)
	{
		s[++l]=n%10;
		n/=10;
	}
	for(int i=1;i<=l;++i)
	{
		int d=s[++k];
		switch (d) 
		{
			case 1:
			{
				a[1][1]=k%2+1;
				break;
			}
			case 2:
			{
				a[1][2]=k%2+1;
				break;
			}
			case 3:
			{
				a[1][3]=k%2+1;
				break;
			}
			case 4:
			{
				a[2][1]=k%2+1;
				break;
			}
			case 5:
			{
				a[2][2]=k%2+1;
				break;
			}
			case 6:
			{
				a[2][3]=k%2+1;
				break;
			}
			case 7:
			{
				a[3][1]=k%2+1;
				break;
			}
			case 8:
			{
				a[3][2]=k%2+1;
				break;
			}
			case 9:
			{
				a[3][3]=k%2+1;
				break;
			}
			default:
				break;
		}
	}
	if(!cu())
	{
		if(!ca())
			cout<<"drew.";
		else
			cout<<"xiaoa wins.";
	}
	else
	{
		if(ca())
			cout<<"drew.";
		else
			cout<<"uim wins.";
	}
	cout<<ca()<<' '<<cu();
	return 0;
}

抱歉,写法很暴力……

思路:转化为九宫格,接着再用ca(判断小a)和cu(判断uim)之间的输赢关系

第四个点:
输入:513764
正确的:uim wins.
我的:xiaoa wins.

本蒟蒻向各位大佬求助!

2022/12/30 17:58
加载中...