【ACM】五子棋
题目链接:http://acm.nuc.edu.cn/OJ/contest/show/25/1009
【问题描述】
五子棋想必大家都玩过,如果没有那我只能重新介绍一下规则了,当横竖斜(共八个方向)出现5个同色棋子时,则认为该颜色棋的选手获胜。郭姐被邀请做为一场五子棋比赛的解说员,他的任务就是判断对于给定的棋盘和黑白棋子,判断两个选手的输赢,两个选手的棋子分别用A,B表示,若最终A赢则输出A,反之输出B,题目保证有且仅有一个玩家获胜,不会出现平局情况。
【输入描述】
第一行输入一个整数n表示需要判断的棋盘的个数
接下来n组数据,每组数据第一行输入x,y(5<= x, y <= 100)表示棋盘的大小
接下来是一个x * y大小的矩阵,'A'表示选手A的棋子位置,'B'表示选手B的棋子,位置'X'(大写字母X)表示没有放置棋子
【输出描述】
对于每一组测试样例,输出‘Case X:’接着
输出一个字母A表示选手'A'获胜或输出一个字母'B'表示选手B获胜,每组样例单独占一行
#include <iostream>
#include <algorithm>
#include <cstdio>
#include <cstring>
using namespace std;
int x,y;char map[200][200];
int D[4][2]={{1,1},{-1,1},{0,1},{1,0}};int find_win(char c,int m,int n)
{int i,j;for(i=0;i<4;i++){if(m+D[i][0]*4>=x ||m+D[i][0]*4<0 || n+D[i][1]*4>=y || n+D[i][1]*4<0) continue;int flag=1;for(j=0;j<5;j++){if(map[m+D[i][0]*j][n+D[i][1]*j]!=c){flag=0;break;}}if(flag) return 1;}return 0;
}char find()
{int i,j;for(i=0;i<x;i++){for(j=0;j<y;j++){if(map[i][j]!='X'){if(find_win(map[i][j],i,j)){return map[i][j];}}}}
}int main ()
{int i,n,case_num;scanf("%d",&n);for(case_num=1;case_num<=n;case_num++){scanf("%d%d",&x,&y);for(i=0;i<x;i++){getchar();scanf("%s",map[i]);}printf("Case %d:%c\n",case_num,find());} return 0;
}
相关文章:

源码编译安装httpd及其常见错误
一、编译安装的整体步骤 1、在官网下载源码,并解压2、切换到其目录中 3、执行./configure4、编译 二、编译中及安装后配置常见的参数及其说明编译中配置1)指定安装路径--prefix/usr/local/Pacakage_name 指定安装路径--sysconfigdir/etc/Package_name …

Nhibernate3循序渐进(三): 一对多映射和级联保存
我们知道, 对于数据库中的一对多关系, 我们在建表的时候, 应该在多表这里建立外键我们准备这样一个场景, 大学里的系和学生, 一个系有多个学生Department类和Xml如下:Department.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespa…

自定义UISearchBar外观
本文转载至 http://www.jianshu.com/p/66b5b777f5dc 最近,在项目过程中遇到要自定义SearchBar的外观,虽然自己觉得用系统默认的外观就行了,不过UI设计师要求不用系统的默认样式,要跟app主题保持 一致。 图1:设计效果图…

linux内存管理和原理分析
https://blog.csdn.net/rebirthme/article/details/50402082
【数据结构】邻接矩阵及其实现
文件操作比直接输入方便很多 直接输入: //建立图的邻接矩阵储存结构 #include <stdio.h> #include <string.h> #define M 20 #define FINITY 5000 typedef struct {char vexs[M];int edge[M][M];int n,e; }Mgraph;//c0,表示建立无向图 …

对职业生涯的思考
从刚毕业到目前所在公司,差不多6年了,想想这六年里面,自己的能力和刚毕业比有了很大的提升,但是现在在什么能力上,我不知道,毕竟没有去过别的公司。最近也在思考自己未来,算是比较迷茫阶段。趁最…

jquery源码分析(七)——事件模块 event(二)
上一章节探讨了事件的一些概念,接下来看下jQuery的事件模块。 jQuery对事件的绑定分别有几个API:.bind()/.live()/.delegate()/.on()/click(), 不管是用什么方式绑定,归根到底还是用addEventListener/attachEvent(IE&a…

google gn构建系统的介绍
GN语言和操作 GN语言和操作 内容介绍 使用内置的帮助设计理念语言 字符串清单条件语句循环函数调用作用域和执行Scoping and execution命名事物 文件和目录名称构建配置目标CONFIGS 公共配置模板其他特性 Imports路径处理模式执行脚本与Blaze的区别和相似之处 介绍 本页面描述…
【数据结构】邻接表的储存结构 建立图的邻接表算法
【数据结构】邻接矩阵及其实现 一个图的邻接矩阵的表示是唯一的,但其邻接表表示不唯一,这是因为在邻接表结构中,各便表结点的链接次序取决于建立邻接表时的算法以及输入的次序。 一般而言邻接矩阵适合存储稠密图,邻接表适合存储…

报错:该字符串未被识别为有效的DateTime
报错:该字符串未被识别为有效的DateTime □ 背景 前端的搜索条件中包含关于时间的字符串,由jquery ui的datepicker产生时间字符串。 服务端对时间做了一次转换:DateTime.Parse(Request["时间字段"].ToString())。 搜索的时候没有选…

Nagios监控笔记上
Nagios软件介绍及服务端安装部署实战1. Nagios服务端安装1.1 准备3台服务器或者虚拟机器管理IP地址角色备注192.168.1.80Nagios监控服务器192.168.1.81Lamp服务器被监控的客户端服务器192.168.1.82Lamp服务器被监控的客户端服务器1.2 解决perl编译问题:后面编译的软…
liunx查看python的site-packages路径
有时候我们在liunx上想修改查看python的包路径可以试试以下命令 from distutils.sysconfig import get_python_lib print(get_python_lib()) 如图:

【ACM】杭电OJ 2010
注意格式!!!注意格式!!! 空格的设置 \n的设置 #include <stdio.h> int main () {int i,m,n,g,s,b,flag;while(scanf("%d%d",&m,&n)!EOF){flag0;for(im;i<n;i){gi%10;bi/100…

中科院 工程硕士专业课 复试考试前的辅导安排
同学们大家好:学校定于12月6日、7日组织专业课辅导,1月初进行专业课复试及资格审查。辅导具体日程安排如下:12月6日下午13:00 数据结构(报考软件工程、计算机技术领域考生) 人文楼教一阶12月7日上午9:00 信号与系统…
TCP性能和发送接收Buffer的关系
本文希望解析清楚,当我们在代码中写下 socket.setSendBufferSize 和 sysctl 看到的rmem/wmem系统参数以及最终我们在TCP常常谈到的接收发送窗口的关系,以及他们怎样影响TCP传输的性能。 先明确一下:文章标题中所说的Buffer指的是sysctl中的 …

PHP 异常类 Exception 高洛峰 细说PHP
/** 1.自定义的异常类,必须是系统类Exception的子类* 如果继承Exception类,重写了构造方法,一定要调用一下父类的构造方法。*/class MyException extends Exception{//必须继承Exception类function __construct($mess){parent::__construct($mess);}func…
【ACM】杭电OJ 2023
注意最后又两个\n #include <iostream> #include <cstdio> #include <cstring> using namespace std; const int maxn 1000; int a[maxn][maxn]; double grade[maxn]; double average[maxn]; int main () {int m,n,i,j,flag,count;//n个学生,m门…

Hadoop学习笔记—7.计数器与自定义计数器
一、Hadoop中的计数器 计数器:计数器是用来记录job的执行进度和状态的。它的作用可以理解为日志。我们通常可以在程序的某个位置插入计数器,用来记录数据或者进度的变化情况,它比日志更便利进行分析。 例如,我们有一个文件&#x…
win10安装spacemacs
1、下载emacs最新版 26.1 2、解压emacs到你的安装目录,我的系统是D:/Program File/。执行/bin目录下的addpm.exe 这一步会在开始菜单创建快捷方式 3、在系统环境变量中添加新项HOME(具体环境变量设置方式请自行google),该变量的路径决定了emacs启动时.emacs.d目录…

【ACM】杭电OJ 2024
注意: 1、getchar() 2、scanf和gets的区别 3、判断条件 C语言的合法标识符 1、由字母,数字,下划线组成 2、且首字符不能是数字 #include <iostream> #include <cstdio> #include <cstring> using namespace std; in…

王振的开发板_Android
任务一: 任务内容:主界面框架的搭建 发布时间:2016-8-26 已完成 任务二: 任务内容:我的 主界面的开发 发布时间:2016-8-27 已完成 任务三: 任务内容:发布界面 动画开发 发布时间&a…

JAX-RS(基于Jersey) + Spring 4.x + MyBatis构建REST服务架构
0. 大背景 众所周知,REST架构已经成为现代服务端的趋势。 很多公司,已经采用REST作为App, H5以及其它客户端的服务端架构。 1. 什么是JAX-RS? JAX-RS是JAVA EE6 引入的一个新技术。 JAX-RS即Java API for RESTful Web Services,是一个Java 编…

c语言宏嵌套和展开规则
基本原则: 在展开当前宏函数时,如果形参有#或##则不进行宏参数的展开,否则先展开宏参数,再展开当前宏。 #是在定义两边加上双引号 #define _TOSTR(s) #sprintf(_TOSTR(test ABC)) printf(_TOSTR("test ABC")); print…

【ACM】杭电OJ 2027
注意输出格式!!!! #include <iostream> #include <cstdio> #include <cstring> using namespace std; const int maxn 10000; char s1[maxn]; int main () {int n,j,i,a,e,o,u;scanf("%d",&n)…

搜索引擎广告过滤Chrome插件
搜索广告屏蔽Chrome插件:自动过滤:百度,360,搜狗,google,bing的搜索广告,让魏则西的悲剧不再重演。珍爱生命,远离搜索广告!下载:FuckAd.zip 安装:方法自行百度…

Scala程序设计:Java虚拟机多核编程实战(国内第一本Scala图书)
Scala程序设计:Java虚拟机多核编程实战(国内第一本Scala图书) 基本信息 作者: (美)Venkat Subramaniam 译者: 郑晔 李剑 丛书名: 图灵程序设计丛书 出版社:人民邮电出版社 ISBN:9787115232953 上架时间&am…

emacs快捷键
https://blog.wozouwokan.com/%E6%96%87%E6%9C%AC%E7%BC%96%E8%BE%91/2015/07/14/spacemacs/ 超全开发快捷键:https://edward852.github.io/post/%E9%80%9A%E7%94%A8%E4%BB%A3%E7%A0%81%E7%BC%96%E8%BE%91%E5%99%A8spacemacs/ spc f T快速定位当前文件在neotree中的…

python 小程序,输错三次密码锁定账户
1 [rootsun ~]# cat 7.py 2 #!/usr/bin/python3 # -*- codingUTF-8 -*-4 5 usera_name usera6 usera_passwd aresu7 usera_status on8 userb_name userb9 userb_passwd bresu 10 userb_status on 11 ng 0 12 13 14 name raw_input(请输入用户名:) 15 …
【数据结构】图的深度优先遍历 广度优先遍历
文件操作比直接输入方便许多 #include <stdio.h> #include <stdlib.h> #include <string.h> #define M 20/*邻接表的储存结构*/ typedef struct node /*表结点 或者 边表结点*/ {int adjvex;struct node *next; }edgenode;typedef struct vnode /*头结点*/ …

C++ Primer(第4版)(评注版)
《C Primer(第4版)(评注版)》基本信息原书名: C Primer (4th Edition) 原出版社: Addison-Wesley Professional; 4 edition 作者: (美)Stanley B.Lippman Josee Lajoie Barbara E.Moo 译者: 陈硕 丛书名: 传世经典书丛…