1 条题解
-
0
自动搬运
来自洛谷,原作者为

a___
这个家伙很蒻,什么也没有留下qwq搬运于
2025-08-24 21:30:54,当前版本为作者最后更新于2017-07-21 17:46:04,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
看完所有题解,写的都太复杂了!
打个表不就行了吗
代码:
#include <iostream> #include <cstring> using namespace std; int hang[10]={0,//一整行连(编号1,2,3) 1,1,1, 2,2,2, 3,3,3}, lie[10]={0,//一整列连(编号4,5,6) 4,5,6, 4,5,6, 4,5,6}, djx1[10]={0,//左上↘右下对角线连(编号7) 7,0,0, 0,7,0, 0,0,7}, djx2[10]={0,//右上↙左下对角线连(编号8) 0,0,8, 0,8,0, 8,0,0}; int x[2][9];//两个人的棋每一种连法的连子数 string s; int main() { cin>>s; int i,len=s.size(); for (i=0;i<len;i++) { x[i%2][hang[s[i]-'0']]++; x[i%2][lie[s[i]-'0']]++; x[i%2][djx1[s[i]-'0']]++; x[i%2][djx2[s[i]-'0']]++; //各种连法都++ } for (i=1;i<=8;i++) if (x[0][i]==3){cout<<"xiaoa wins.\n";return 0;}//如果小a赢(连3个) else if (x[1][i]==3){cout<<"uim wins.\n";return 0;}//如果uim赢(连3个) cout<<"drew.\n";//都没赢就平局 return 0; }
- 1
信息
- ID
- 808
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 1
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 上传者