首页 > 代码库 > BZOJ 1121: [POI2008]激光发射器SZK
BZOJ 1121: [POI2008]激光发射器SZK
1121: [POI2008]激光发射器SZK
Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 792 Solved: 653
[Submit][Status][Discuss]
Description
多边形相邻边垂直,边长为整数,边平行坐标轴。要在多边形的点上放一些激光发射器和接收器。满足下列要求: 1发射器和接收器不能放置在同一点; 2发射器发出激光可以沿壁反射,最终到达一个接收器; 3发射器只能沿角平分线发射激光。求:最多可放置多少对发射器和接收器?点数4<=n<=100000
Input
第一行给出一个数字N,代表有多少个点. 下面N行,用来描述点的坐标.其值在[-1000000,1000000]
Output
最多可放置多少对发射器和接收器
Sample Input
10
1 1
3 1
3 -2
-3 -2
-3 0
-1 0
-1 -1
2 -1
2 0
1 0
1 1
3 1
3 -2
-3 -2
-3 0
-1 0
-1 -1
2 -1
2 0
1 0
Sample Output
5
HINT
感谢YYD大牛贡献译文.
Source
分析
经过NEIGHTHORN童鞋的一番证明,发现所有点势必能形成完美匹配,所以,答案就是点数的一半…… OTZ NEIGHTHORN
代码
1 #include <bits/stdc++.h> 2 3 using namespace std; 4 5 signed main (void) 6 { 7 int n; 8 scanf ("%d", &n); 9 printf ("%d\n", n >> 1); 10 }
@Author: YouSiki
BZOJ 1121: [POI2008]激光发射器SZK
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。