题目描述
在二维坐标平面里有 N 个整数点,信息班某一巨佬要访问这 N 个点。刚开始巨佬在点(0,0)处。 每一步,巨佬可以走到上、下、左、右四个点。即假设巨佬当前所在点的坐标是(x,y),那么它下一步可以移动到(x,y+1), (x,y-1), (x+1,y),(x-1,y)之一。
巨佬目标是找到一个移动序列,满足下面的条件:
1、从点(0,0)出发。
2、对于给定的那 N 个点,每个点至少被访问一次。
3、可以选择那 N 个给定点中任意一个作为结束点。
现在为了增加难度,巨佬的教练规定巨佬走过的所有步数之和的奇偶性必须为wantedParity,显然 wantedParity 是 0 或 1,是题目给定的, 0 表示偶, 1 表示奇。不过这依然难不到巨佬,但是............
巨佬临时有事,但是 ta 又不想受教练的批评,所以巨佬向你发出了求助(并且你不可拒绝)如果存在满足条件的移动序列,那么输出 CAN,否则输出 CANNOT。
多组测试数据。
第一行,一个整数 g,表示有 g 组测试数据,1 <= g <= 50。
输入格式
第 1 行,N、wantedParity。 1 <= N <= 3000。
接下来有 N 行,每行两个整数:x, y,表示第 i 个点的坐标值。
范围都在【-1000000,1000000】。输入的 N 个点不会有重叠,且不会有(0,
0)点。
输出格式
共 g 行,每行输出 CAN 或 CANNOT。
样例输入
5
40
-1 -1
-1 1
11
1 -1
31
-5 2
-3 0
23
21
1001 0
-4000 0
30
11 -20
21 42
07
21
0 10
6 -20
样例输出
CAN
CAN
CAN
CANNOT
CANNOT

Solution:

  这个题目一眼看上去很吊,还被大佬们故意放在最后一题,但是细想还是不难的。

  首先我们可以发现,一个点到另一个点的路径的奇偶性是不变的,如果不知道为什么的话,有一个快速的方法:如果它的奇偶性是可以改变的,那么答案肯定是CAN,因为只要任意改变一条路径的奇偶性就可以改变整条路的奇偶性,所以不会出现CANNOT的情况,这样一想,两点之间的路径的奇偶性一定是不会改变的。

  想到这一点,这个题目就很好做了,起点是(0,0),终点是n个点中任意一个,而两点之间路径的奇偶性又是确定的,所以判断(0,0)和n个点中每个点的距离的奇偶性,就可以知道有没有一条在n个点中结束的路径的长度的奇偶性与给出的wantedParity相同,然后这就是一个大水题了

贴代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{
int T;
bool flag;
cin>>T;
for(int i=;i<=T;i++)
{
flag=;
int n,k;
cin>>n>>k;
for(int j=;j<=n;j++)
{
int x,y;
scanf("%d%d",&x,&y);
if(flag==)
if((abs(x)+abs(y))%==k) {flag=; cout<<"CAN"<<endl;}
}
if(flag==) cout<<"CANNOT"<<endl;
}
return ;
}

【NOIP 模拟赛】 道路的更多相关文章

  1. noip模拟赛 道路分组

    分析:因为每一组编号都是连续的嘛,所以能分成一组的尽量分,每次加边后dfs判断一下1和n是否连通.有向图的判连通没有什么很快的方法,特别注意,并查集是错的!这个算法可以得到60分. 事实上每一次都不需 ...

  2. NOIP模拟赛20161022

    NOIP模拟赛2016-10-22 题目名 东风谷早苗 西行寺幽幽子 琪露诺 上白泽慧音 源文件 robot.cpp/c/pas spring.cpp/c/pas iceroad.cpp/c/pas ...

  3. contesthunter暑假NOIP模拟赛第一场题解

    contesthunter暑假NOIP模拟赛#1题解: 第一题:杯具大派送 水题.枚举A,B的公约数即可. #include <algorithm> #include <cmath& ...

  4. NOIP模拟赛 by hzwer

    2015年10月04日NOIP模拟赛 by hzwer    (这是小奇=> 小奇挖矿2(mining) [题目背景] 小奇飞船的钻头开启了无限耐久+精准采集模式!这次它要将原矿运到泛光之源的矿 ...

  5. 大家AK杯 灰天飞雁NOIP模拟赛题解/数据/标程

    数据 http://files.cnblogs.com/htfy/data.zip 简要题解 桌球碰撞 纯模拟,注意一开始就在袋口和v=0的情况.v和坐标可以是小数.为保险起见最好用extended/ ...

  6. 队爷的讲学计划 CH Round #59 - OrzCC杯NOIP模拟赛day1

    题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的讲学计划 题解:刚开始理解题意理解了好半天,然后发 ...

  7. 队爷的Au Plan CH Round #59 - OrzCC杯NOIP模拟赛day1

    题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的Au%20Plan 题解:看了题之后觉得肯定是DP ...

  8. 队爷的新书 CH Round #59 - OrzCC杯NOIP模拟赛day1

    题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的新书 题解:看到这题就想到了 poetize 的封 ...

  9. CH Round #58 - OrzCC杯noip模拟赛day2

    A:颜色问题 题目:http://ch.ezoj.tk/contest/CH%20Round%20%2358%20-%20OrzCC杯noip模拟赛day2/颜色问题 题解:算一下每个仆人到它的目的地 ...

  10. CH Round #52 - Thinking Bear #1 (NOIP模拟赛)

    A.拆地毯 题目:http://www.contesthunter.org/contest/CH%20Round%20%2352%20-%20Thinking%20Bear%20%231%20(NOI ...

随机推荐

  1. 如何解决div里面img图片下方有空白的问题?

    空白产生原因: 图片默认的vertical-align是baseline,(元素放置在父元素的基线上,也就是xx下边距) 一个inline-block元素,如果里面没有inline元素,或者overf ...

  2. AC日记——[JLOI2014]松鼠的新家 洛谷 P3258

    题目描述 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有n个房间,并且有n-1根树枝连接,每个房间都可以相互到达,且俩个房间之间的路线都是唯一的.天哪,他居然真的住在”树“上. 松鼠想邀请小熊维尼前 ...

  3. Objective_C与Swift混编遇到的坑(一)

    swift推出已经很长一段时间了,前段时间突然想尝试一些简单的类用swift编写于是便开始了混编的路程. 1.在oc代码里引用swift类:找了很多资料需要添加头文件格式为 #import " ...

  4. Codeforces Gym101502 F.Building Numbers-前缀和

    F. Building Numbers   time limit per test 3.0 s memory limit per test 256 MB input standard input ou ...

  5. Endless Pallet(min-max容斥)

    地址:传送门 分析: 设$x_i$表示第i个点被染成黑色的时间,所求即为$E(max \left \{x_i  \right \})$ 因为$E(X)=\sum_{k=1}^{\infty}i \ti ...

  6. tomcat启动报异常(一)

    异常问题:Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web ...

  7. 访问权限修饰符Protected专题

    上图描述:A类在a包下,m()方法被protected修饰 上图描述:B类也在a包下,B类是A类的子类. 解析:B类和A类是同包类,B类是A类的子类,因此b对象可以调用m()方法. 上图描述:C类也在 ...

  8. Window10下Apache2.4的安装和运行

    以前用Python运行的Web框架都是要运行在Linux下,加上WSGI服务器,比如Gunicorn+Flask,后来了解到了Apache,看看能不能基于Apache这个Web服务器下给python提 ...

  9. byte 单位换算

    1G就1GB啦,平时人们说1G只是简洁来说而已. bit(位).B(字节).K(千).M(兆).G(吉咖).T(太拉) B(Byte).KB(KiloByte).MB(MegaByte).GB(Gig ...

  10. hibernate的注解装配

    1.多对多,(中间表不用映射) @ManyToMany @JoinTable(name = "中间表名", joinColumns = { @JoinColumn(name = & ...