求救!我就20分。
  • 板块P1838 三子棋I
  • 楼主Ethan_1
  • 当前回复2
  • 已保存回复2
  • 发布时间2025/1/12 18:20
  • 上次更新2025/1/12 22:05:00
查看原帖
求救!我就20分。
1529241
Ethan_1楼主2025/1/12 18:20
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
    string y;
    int a[3][3]={};
    cin>>y;
    for(int i=0;i<y.size();i++)
    {
        if(i%2==0)
        {
            if(y[i]<=3) a[0][int(y[i])-49]=1;
            else if(y[i]<=6) a[1][int(y[i])-52]=1;
            else if(y[i]<=9) a[2][int(y[i])-55]=1;
            if((a[0][0]==1&&a[0][1]==1&&a[0][2]==1)||(a[1][0]==1&&a[1][1]==1&&a[1][2]==1)||(a[2][0]==1&&a[2][1]==1&&a[2][2]==1)||(a[0][0]==1&&a[1][0]==1&&a[2][0]==1)||(a[0][1]==1&&a[1][1]==1&&a[2][1]==1)||(a[0][2]==1&&a[1][2]==1&&a[2][2]==1)||(a[0][0]==1&&a[1][1]==1&&a[2][2]==1)||(a[0][2]==1&&a[1][1]==1&&a[2][0]==1))
            {
                cout<<"xiaoa wins.";
                return 0;
            }
        }
        if(i%2==1)
        {
            if(y[i]<=3) a[0][int(y[i])-49]=2;
            else if(y[i]<=6) a[1][int(y[i])-52]=2;
            else if(y[i]<=9) a[2][int(y[i])-55]=2;
            if((a[0][0]==2&&a[0][1]==2&&a[0][2]==2)||(a[1][0]==2&&a[1][1]==2&&a[1][2]==2)||(a[2][0]==2&&a[2][1]==2&&a[2][2]==2)||(a[0][0]==2&&a[1][0]==2&&a[2][0]==2)||(a[0][1]==2&&a[1][1]==2&&a[2][1]==2)||(a[0][2]==2&&a[1][2]==2&&a[2][2]==2)||(a[0][0]==2&&a[1][1]==2&&a[2][2]==2)||(a[0][2]==2&&a[1][1]==2&&a[2][0]==2))
            {
                cout<<"uim wins.";
                return 0;
            }
        }
    }
    cout<<"drew.";
    return 0;
}

大佬勿骂,我尽力了。 l_P_Ol

2025/1/12 18:20
加载中...