思维

Tic Tac Toe

解题思路

只需要判断几种不符合的情况即可,设 X 的步数是 xnumxnumxnum,O 的步数是 onumonumonum,则要满足:

  • X 先走,故 xnum=onum∣∣xnum=onum+1xnum = onum \ || \ xnum = onum + 1xnum=onum ∣∣ xnum=onum+1
  • 若 xnum=onumxnum = onumxnum=onum,说明此时 O 刚走完,下一步是 X 走。此时 X 不可能获胜。
  • 若 xnum=onum+1xnum = onum + 1xnum=onum+1,说明此时 X 刚走完,下一步是 O 走。此时 O 不可能获胜。

参考代码

//poj GCC
#include<iostream>
#include<vector>
#include<cstring>
#include<cstdio>
#include<climits>
#include<cmath>
#include<algorithm>
#include<queue>
#include<deque>
#include<map>
#include<set>
#include<stack>
//#define LOCAL  //提交的时候一定注释
#define inf 0x3f3f3f3f
#define INF 0x3f3f3f3f3f3f3f3f
typedef long long LL;
using namespace std;
const int maxn = 1e5 + 10;
const int MOD = 1e9 + 7;
const int N = 13;int readint() {int x; scanf("%d", &x); return x;
}char M[5][5];bool win(char c) {for(int i = 0; i < 3; i++) {int j;for(j = 0; j < 3 && M[i][j] == c; j++);if (j == 3) return true;for(j = 0; j < 3 && M[j][i] == c; j++);if (j == 3) return true;}int i;for(i = 0; i < 3 && M[i][i] == c; i++);if (i == 3) return true;for(i = 0; i < 3 && M[i][2 - i] == c; i++);if (i == 3) return true;return false;
}int main() {#ifdef LOCALfreopen("input.txt", "r", stdin);
//    freopen("output.txt", "w", stdout);
#endifint t = readint();while (t--) {int xnum = 0, onum = 0;for(int i = 0; i < 3; i++) {scanf("%s", M[i]);for(int j = 0; j < 3; j++) {if (M[i][j] == 'X') xnum++;if (M[i][j] == 'O') onum++;}}bool flag = true;if (xnum == onum || xnum == onum + 1) {if (xnum == onum) {if (win('X')) flag = false;}elseif (win('O')) flag = false;} else flag = false;printf("%s\n", flag ? "yes" : "no");}return 0;
}

思维 POJ - 2361 Tic Tac Toe相关推荐

  1. python井字棋ai,python 井字棋(Tic Tac Toe)

    说明 用python实现了井字棋,整个框架是本人自己构思的,自认为比较满意.另外,90%+的代码也是本人逐字逐句敲的. minimax算法还没完全理解,所以参考了这里的代码,并作了修改. 特点 可以选 ...

  2. python二维游戏示例_Python实现的井字棋(Tic Tac Toe)游戏示例

    本文实例讲述了Python实现的井字棋(Tic Tac Toe)游戏.分享给大家供大家参考,具体如下: 说明 用python实现了井字棋,整个框架是本人自己构思的,自认为比较满意.另外,90%+的代码 ...

  3. python游戏代码运行不了_无法使我的tic tac toe游戏在python中正确运行

    转不到"玩家1"的原因是你的支票中缺少一个空格.你也没有正确地检查一个玩家何时获胜,这就是为什么你会有这种奇怪的行为.你需要检查每个位置,而不仅仅是最后一个.我还添加了对用户输入的 ...

  4. react中使用构建缓存_通过在React中构建Tic Tac Toe来学习ReasonML

    react中使用构建缓存 3. 7. 2018: UPDATED to ReasonReact v0.4.2 3. 7. 2018:更新为ReasonReact v0.4.2 You may have ...

  5. Principle of Computing (Python)学习笔记(7) DFS Search + Tic Tac Toe use MiniMax Stratedy

    1. Trees Tree is a recursive structure. 1.1 math nodes https://class.coursera.org/principlescomputin ...

  6. amazon.设计1. tic tac toe

    //不觉中 已经全力找工作好久好久了.大概有1年半了.身心疲惫,不要放弃.曙光快来了. 1.tic tac toe //http://www.ntu.edu.sg/home/ehchua/progra ...

  7. python井字棋游戏代码_Python实现的井字棋(Tic Tac Toe)游戏示例

    Python实现的井字棋(Tic Tac Toe)游戏示例 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  Python实现的井字棋(Tic Tac Toe)游戏示 ...

  8. C++ 很有趣:编写一个井字游戏 (Tic Tac Toe)

    英文原文:C++ is fun: Writing a Tic Tac Toe Game 这个有趣的C++系列打算展示一下使用C++写代码可以和其他主流语言一样高效而有趣.在第二部分,我将向你展示使用C ...

  9. 圈叉游戏 java_【炫光圈叉棋】炫光圈叉棋 Tic Tac Toe Glow 1.8.1下载_安卓(android)软件下载-魅族溜...

    一款炫光风格的圈叉棋游戏,支持单/双人模式.圈叉棋,英文:tic-tac-toe,别名:圈叉游戏.是一种游戏,3*3的9个方格子,先下者画圈,后下者画叉,每人可以在任意没有对方棋子的封闭方格里下一次, ...

  10. java tic tac toe_请问我这个tic tac toe的游戏代码的问题在哪里

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Scanner in = new Scanner(System.in); final int SIZE =3; int[][] board = new i ...

最新文章

  1. (转)利用ArcScene进行三维地形模拟
  2. grunt使用watch和livereload的Gruntfile.js的配置
  3. 相声演员侯耀文突发疾病去世享年59岁 深切怀念
  4. 推荐系统笔记(内容推荐)
  5. tomcat - JVM 配置
  6. 新款苹果电脑_苹果发布新款MacBookAir 搭载M1芯片7999起
  7. 玩转spring boot——结合redis
  8. 2023届IC实习小结
  9. 【每日一题】7月3日精讲—毒瘤xor
  10. Democracy Player 0.8.5
  11. Anaconda中使用图形化界面创建虚拟环境
  12. 《隋唐演义》二:竞争对手的实力在不断增强
  13. 大数据技术原理与应用学习笔记(五)
  14. linux安装音乐软件下载,网易云音乐Linux版
  15. MATLAB希尔伯特变换
  16. iphone如何删除“不可删除”的描述文件?(桌面快捷方式web clib)
  17. 交换机的基本原理与配置
  18. STC 串口下载电路 - CH340G或CH340N USB转串口以及漏电隔离
  19. Linux网络——部署yum仓库
  20. 如何获取这台电脑上登陆过的全部QQ号,

热门文章

  1. 学大数据应该会什么?
  2. python的def语句_关于语法:python def函数:如何指定函数的结尾?
  3. Rust中的面向对象编程Rusty OOP
  4. Java实训——学生信息管理系统
  5. vue遇到ie兼容问题如何处理_Vue 2.0 解决IE浏览器的兼容性
  6. 第六十一章 方法关键字 - Deprecated
  7. 用ProcessOn制作流程图
  8. 二、stl ,模拟,贪心等 [Cloned] E - 贪心
  9. 读《我没偷懒 - 读写记忆困难儿童案例》
  10. xcode设置文字背景图片