ACM-Team Tic Tac Toe
我的代码:
#include <bits/stdc++.h>
using namespace std;
int main()
{
char a[3][3];
int i,j=0;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
cin>>a[i][j];
}
}
int count1,count2;
int len1,len2;
len1=len2=0;
char b[50],c[2][50];
count1=count2=0;
for( i=0;i<3;i++ )
{
if(a[i][0]==a[i][1]&&a[i][1]==a[i][2]){
b[j++]=a[i][0];
}
if(a[0][i]==a[1][i]&&a[1][i]==a[2][i]){
b[j++] = a[0][i];
}
}
if(a[0][0]==a[1][1]&&a[1][1]==a[2][2]){
b[j++]=a[0][0];
}
if(a[0][2]==a[1][1]&&a[1][1]==a[2][0]){
b[j++]=a[0][2];
}
len1 = j;
for(i=0;i<len1;i++){
for(j=i+1;j<len1;j++){
if(b[i]==b[j]){
b[j]='1';
}
}
}
j=0;
for(i=0;i<len1;i++){
if('A'<=b[i]&&b[i]<='Z')count1++;
}
for( i=0;i<3;i++ )
{
if(a[i][0]==a[i][1]&&a[i][0]!=a[i][2]) {
c[0][j] = a[i][0];
c[1][j++] = a[i][2];
}
if( a[i][1]==a[i][2]&&a[i][2]!=a[i][0] ){
c[0][j] = a[i][1];
c[1][j++] = a[i][0];
}
if( a[i][0]==a[i][2]&&a[i][2]!=a[i][1] ){
c[0][j] = a[i][0];
c[1][j++] = a[i][1];
}
if(a[0][i]==a[1][i]&&a[0][i]!=a[2][i]){
c[0][j] = a[0][i];
c[1][j++] = a[2][i];
}
if( a[1][i]==a[2][i]&&a[2][i]!=a[0][i] ){
c[0][j] = a[1][i];
c[1][j++] = a[0][i];
}
if( a[0][i]==a[2][i]&&a[2][i]!=a[1][i] ){
c[0][j] = a[0][i];
c[1][j++] = a[1][i];
}
}
if(a[0][0]==a[1][1]&&a[1][1]!=a[2][2]){
c[0][j] = a[0][0];
c[1][j++] = a[2][2];
}
if(a[1][1]==a[2][2]&&a[2][2]!=a[0][0]) {
c[0][j] = a[1][1];
c[1][j++] = a[0][0];
}
if(a[0][0]==a[2][2]&&a[2][2]!=a[1][1]) {
c[0][j] = a[0][0];
c[1][j++] = a[1][1];
}
if(a[0][2]==a[1][1]&&a[1][1]!=a[2][0]){
c[0][j] = a[1][1];
c[1][j++] = a[2][0];
}
if(a[1][1]==a[2][0]&&a[1][1]!=a[0][2]) {
c[0][j] = a[1][1];
c[1][j++] = a[0][2];
}
if(a[0][2]==a[2][0]&&a[0][2]!=a[1][1]) {
c[0][j] = a[0][2];
c[1][j++] = a[1][1];
}
len2 = j;
for(i=0;i<len2;i++){
for(j=i+1;j<len2;j++){
if((c[0][i]==c[0][j]&&c[1][i]==c[1][j])||(c[0][i]==c[1][j]&&c[1][i]==c[0][j])){
c[0][j]='1';
c[1][j]='1';
}
}
}
j=0;
for(i=0;i<len2;i++){
if('A'<=c[0][i]&&c[0][i]<='Z')count2++;
}
cout<<count1<<endl<<count2;
}
ACM-Team Tic Tac Toe的更多相关文章
- 2019 GDUT Rating Contest III : Problem C. Team Tic Tac Toe
题面: C. Team Tic Tac Toe Input file: standard input Output file: standard output Time limit: 1 second M ...
- 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 ...
- POJ 2361 Tic Tac Toe
题目:给定一个3*3的矩阵,是一个井字过三关游戏.开始为X先走,问你这个是不是一个合法的游戏.也就是,现在这种情况,能不能出现.如果有人赢了,那应该立即停止.那么可以知道X的步数和O的步数应该满足x= ...
- 【leetcode】1275. Find Winner on a Tic Tac Toe Game
题目如下: Tic-tac-toe is played by two players A and B on a 3 x 3 grid. Here are the rules of Tic-Tac-To ...
- [CareerCup] 17.2 Tic Tac Toe 井字棋游戏
17.2 Design an algorithm to figure out if someone has won a game oftic-tac-toe. 这道题让我们判断玩家是否能赢井字棋游戏, ...
- Epic - Tic Tac Toe
N*N matrix is given with input red or black.You can move horizontally, vertically or diagonally. If ...
- python 井字棋(Tic Tac Toe)
说明 用python实现了井字棋,整个框架是本人自己构思的,自认为比较满意.另外,90%+的代码也是本人逐字逐句敲的. minimax算法还没完全理解,所以参考了这里的代码,并作了修改. 特点 可以选 ...
- LeetCode 5275. 找出井字棋的获胜者 Find Winner on a Tic Tac Toe Game
地址 https://www.acwing.com/solution/LeetCode/content/6670/ 题目描述A 和 B 在一个 3 x 3 的网格上玩井字棋. 井字棋游戏的规则如下: ...
- sdut 2162:The Android University ACM Team Selection Contest(第二届山东省省赛原题,模拟题)
The Android University ACM Team Selection Contest Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里 ...
随机推荐
- office的project的激活码
8XWTK-7DBPM-B32R2-V86MX-BTP8PMVR3D-9XVBT-TBWY8-W3793-FR7C326K3G-RGBT2-7W74V-4JQ42-KHXQWD4HF2-HMRGR-R ...
- LA 3938 动态最大连续和(线段树)
https://vjudge.net/problem/UVALive-3938 题意:给出一个长度为n的整数序列D,你的任务是对m个询问作出回答.对于询问(a,b),需要找到两个下标x和y,使得a≤x ...
- python strip()函数 os.popen()
函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm) 删除s字符串中开头.结尾处,位于 rm删除序列的字符 s.lstrip(rm) 删除s字符串中开头处,位于 rm删除序列的字 ...
- 学习mybatis-3 step by step 篇一
一.搭建简单mybatis-3环境(详细的中文文档) 集成开发环境:IDEA 项目:maven + mybatis-3 1.创建maven结构项目 含简单,如下图: 下一步后,填写groupid和ar ...
- c++ 容器排序
#include <algorithm> #include <functional> #include <array> #include <iostream& ...
- Qt5_vs2013_error_C2001: 常量中有换行符__ZC
ZC: 这里是解决 Windows平台下的这个 编译error :“error C2001: 常量中有换行符”. ZC: 我现在(20161221)的处理方式:vs2010或vs2015 将cpp文件 ...
- MVP框架模式
一.基本概念 MVP是Model-View-Presenter的简称,即模型-视图-表现层的缩写.MVP是由MVC模式进化而来的,MVP改进了MVC中的控制器过于臃肿的问题.与MVC一样,MVP将应用 ...
- 《Effective C#》读书笔记——条目13:正确地初始化静态成员变量<.NET资源管理>
我们知道在C#语言中创建一个类型的实例前,就应该初始化该类型的所有静态成员变量.C#语言为我们提供了静态初始化器和静态构造函数.其中,静态构造函数是一个特殊的构造函数,将在其他所有方法执行前以及变 ...
- uva-11021-全概率公式
https://vjudge.net/problem/UVA-11021 有n个球,每只的存活期都是1天,他死之后有pi的概率产生i个球(0<=i<n),一开始有k个球,问m天之后所有球都 ...
- IOS-网络(JSON解析数据与XML解析数据)
一.JSON解析数据 // // VideoModel.h // IOS_0130_网络视频 // // Created by ma c on 16/1/30. // Copyright © 2016 ...