注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

XHRlyb

OIer

 
 
 

日志

 
 
 
 

BZOJ 2462 水题  

2017-05-07 17:23:16|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Description

给定一个M行N列的01矩阵,以及Q个A行B列的01矩阵,你需要求出这Q个矩阵哪些在原矩阵中出现过。    所谓01矩阵,就是矩阵中所有元素不是0就是1。 

Input

输入文件的第一行为M、N、A、B,参见题目描述。 接下来M行,每行N个字符,非0即1,描述原矩阵。 接下来一行为你要处理的询问数Q。 接下来Q个矩阵,一共Q*A行,每行B个字符,描述Q个01矩阵。 

Output

你需要输出Q行,每行为0或者1,表示这个矩阵是否出现过,0表示没有出现过,1表示出现过。

Sample Input

3 3 2 2 111 000 111 3 11 00 11 11 00 11

Sample Output

1 0 1

HINT

对于100%的数据,N,M<=1000 A,B<=100

以上是题目描述。

这道题可以看成1×2的骨牌覆盖n×n的矩阵的问题,起点在(1,1),小明一步恰好走到第一个骨牌的末端,所以小红每次掌控骨牌的始端,小明末端。

n为偶数时,矩阵一定能被完全覆盖(有偶数个格子),最后一个格子被小明走到,小明胜;n为奇数时,n×n-1被完全覆盖,最后一个格子被小红走到,所以小红胜。

代码

#include<cstdio> //这么短的代码……
int main()
{
int x;
scanf("%d",&x);
while (x!=0)
{
printf(x%2 ? "Bob\n": "Alice\n");
scanf("%d",&x);
}
return 0;
}


  评论这张
 
阅读(6)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017