poj 3075 Tic-Tac-Toe 五子棋模拟

来源:互联网 发布:js java变量 编辑:程序博客网 时间:2024/06/04 19:28
//poj 3075//sep9#include <iostream>#include <algorithm>using namespace std;int way[8][3]={{0,1,2},{3,4,5},{6,7,8},{0,3,6},{1,4,7},{2,5,8},{0,4,8},{2,4,6}};char s[16];bool check(char c){for(int i=0;i<8;++i){int j;for(j=0;j<3;++j)if(s[way[i][j]]!=c)break;if(j==3)return true;}return false;}int main(){int x,o;while(scanf("%s",s)==1&&strcmp(s,"end")){x=count(s,s+9,'X');o=count(s,s+9,'O');if(x<o||o+1<x||x<3)puts("invalid");else if(x>o&&check('X')&&!check('O')) puts("valid");else if(o==x&&!check('X')&&check('O')) puts("valid");else if(x+o==9&&!check('X')&&!check('O')) puts("valid");else puts("invalid");}return 0;} 

0 0
原创粉丝点击