完全覆盖
来源:互联网 发布:深圳网络诈骗案 编辑:程序博客网 时间:2024/05/19 03:24
描述有一天小董子在玩一种游戏----用2*1或1*2的骨牌把m*n的棋盘完全覆盖。但他感觉游戏过于简单,于是就随机生成了两个方块的位置(可能相同),标记一下,标记后的方块不用覆盖。还要注意小董子只有在m*n的棋盘能被完全覆盖后才会进行标记。现在他想知道:如果标记前m*n的棋盘能被完全覆盖,标记后的棋盘是否能被完全覆盖?输入第一行有一个整数t(1<=t<=100000),表示有t组测试数据。每组测试数据有三行或一行。第一行有两个整数 m,n(1<=m,n<=25535)表示行数和列数。如果需要标记的话,第二、三行都有两个整数 a,b(1<=a<=m,1<=b<=n),表示行标和列标。输出若标记前m*n的棋盘能被完全覆盖,则看标记后的棋盘是否能被完全覆盖,能则输出“YES”,否则输出“NO”;若标记前m*n的棋盘不能被完全覆盖则输出“NO”。样例输入24 41 14 45 5样例输出NONO
个人理解:
1:该棋盘中m,n中至少有一个是偶数才能完全覆盖
2:被标记的两个方块位置行列之和一个为奇数一个为偶数才能继续完全覆盖
结果时间内存语言Accepted872240C/C++代码:#include<stdio.h>int main(){ int t,m,n; scanf("%d",&t); while(t--) { scanf("%d%d",&m,&n); if(m*n%2==0)//判断该棋盘是否能完全覆盖 { int a,b,c,d; scanf("%d%d%d%d",&a,&b,&c,&d); if(((a+b)%2==0&&(c+d)%2!=0)||((a+b)%2!=0&&(c+d)%2==0))//判断棋盘被标记后能否继续被完全覆盖 printf("YES\n"); else printf("NO\n"); } else { printf("NO\n"); } } return 0;}
阅读全文
0 0
- 完全覆盖
- 完全覆盖
- 完全覆盖
- 完全覆盖
- 【区间完全覆盖问题】
- nyoj 328 完全覆盖
- 完全覆盖1-OJ
- 完全覆盖问题
- Nyoj 515 完全覆盖 II
- 南阳理工学院ACM完全覆盖
- F(n)完全覆盖中的计数问题
- 一、Dancing Links:完全覆盖算法
- NYOJ 题目328 完全覆盖(数学)
- 区间完全覆盖问题----挤牛奶
- 完全覆盖 II 之状态压缩
- git 一个分支完全覆盖另一个分支
- 微信小程序背景图片完全覆盖显示
- uva 10020 Minimal coverage 【贪心】+【区间完全覆盖】
- Akka服务端客户端编写hellword
- webservice简单实例
- Sql(Oracle)
- git efrror: RPC failed
- MediaCodec硬编码YUV和PCM——非常具有参考意义
- 完全覆盖
- ios-实现可拉伸的图片
- 数据结构 学习笔记(十):排序(上):简单排序(冒泡,插入),希尔 / 选择 / 堆 / 归并 排序
- Oracle根据当前时间获取最近5年,最近6个月,最近30天的时间
- 员工管理系统
- 关于offsetTop与offsetHeight的区别以及使用方法
- 倍增算法(LCA)
- Caffe 安装OpenCV-2.4.13
- 一个自登陆谷歌插件