题解 | #井字棋#
井字棋
https://www.nowcoder.com/practice/0375c1d206ef48a3894f72aa07b2fdde
#include <iostream>
using namespace std;
int main() {
char a[3][3];
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
cin>>a[i][j];
}
}
bool flag1=false,flag2=false;
for(int i=0;i<3;i++)
{
if(a[i][0]=='K'&&a[i][1]=='K'&&a[i][2]=='K')
{
flag1=true;
}
else if(a[i][0]=='B'&&a[i][1]=='B'&&a[i][2]=='B')
{
flag2=true;
}
}
for(int i=0;i<3;i++)
{
if(a[0][i]=='K'&&a[1][i]=='K'&&a[2][i]=='K')
{
flag1=true;
}
else if(a[0][i]=='B'&&a[1][i]=='B'&&a[2][i]=='B')
{
flag2=true;
}
}
if(a[0][0]=='K'&&a[1][1]=='K'&&a[2][2]=='K'||a[2][0]=='K'&&a[1][1]=='K'&&a[0][2]=='K')
{
flag1=true;
}
else if(a[0][0]=='B'&&a[1][1]=='B'&&a[2][2]=='B'||a[2][0]=='B'&&a[1][1]=='B'&&a[0][2]=='B')
{
flag2=true;
}
if(flag1)
{
cout<<"KiKi wins!";
}
else if(flag2)
{
cout<<"BoBo wins!";
}
else {
cout<<"No winner!";
}
}
// 64 位输出请用 printf("%lld")
记得对角线有两条


查看3道真题和解析
联想公司福利 1500人发布