凸多边形
发布日期:2021-07-01 00:13:20
浏览次数:2
分类:技术文章
本文共 1138 字,大约阅读时间需要 3 分钟。
问题 : 凸多边形
时间限制: 1 Sec 内存限制: 128 MB题目描述
灾区已经非常困难,灾民需要帐篷、衣物、食品和血浆。可通往灾区的道路到处都是塌方,70%以上的路面损坏,桥梁全部被毁。中国空军立即启动应急预案,展开史上最大强度非作战空运行动,准备向灾区空投急需物资。由于余震不断,天气恶劣,怎样知道空投的物资是否落在某灾区的区域内呢? 经过空中观测,某灾区为一凸多边形,空投的物资落在P(X,Y)点。判断物资是否正确降落在区域内。
输入
第1行: N X Y (N为凸形的边数,X,Y为空投物资的坐标 ) 第2行: X1 Y1 X2 Y2…….Xn Yn (逆序给出的N个顶点坐标 )
输出
YES (物资落在灾区的区域内 ) 或 NO (物资落在灾区的区域外 ) 【约束条件】 (1) 3 ≤N ≤ 20 (2) 所有的坐标Xi和Yi为整数 -10000≤ Xi ,Yi ≤10000 (3) X,Y为整数 -10000≤ X ,Y ≤10000
(4) 时间限制: 1000MS
当物资降落在区域边缘时,输出YES。
样例输入
4 2 2-1 0 3 -2 10 9 -1 110
样例输出
YES
#includeint main(){ int n, x, x1, x2, y, y1, y2, flag, s[25][2]; while (~scanf("%d", &n)) { flag = 0; scanf("%d%d", &x, &y); for (int i = 0; i < n; i++) scanf("%d%d", &s[i][0], &s[i][1]); for (int i = 0; i < n; i++) { x1 = s[i][0]; y1 = s[i][1]; x2 = s[(i + 1) % n][0]; y2 = s[(i + 1) % n][1]; if ((y - y1) * (x2 - x1) - (x - x1) * (y2 - y1) < 0) { flag = 1; break; } } if (flag) puts("NO"); else puts("YES"); } return 0;}
转载地址:https://lzyws739307453.blog.csdn.net/article/details/80024926 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年04月14日 14时16分19秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
RabbitMQ消息队列(七):适用于云计算集群的远程调用(RPC)
2019-05-01
xtrabackup备份之增量备份(二)
2019-05-01
《视频直播技术详解》系列:(6)编码和封装
2019-05-01
类函数重写、重载、覆盖示例
2019-05-01
五种主要多核并行编程方法分析与比较
2019-05-01
GB28181计算注册登陆时的鉴权信息
2019-05-01
人工智能为什么这么火?看看安防江湖30年血战就知道了
2019-05-01
“中国已建成世界上最大的视频监控网”背后的问题
2019-05-01
一个ps解复用H264和H264打包ps的动态库及demo
2019-05-01
“前端智能为安防产生新的数据价值”
2019-05-01
异或^ 的几个作用
2019-05-01
nanomsg编译与测试
2019-05-01
(2)CMake入门笔记--CMake官网教程
2019-05-01
(3)CMake入门笔记--CMake官网教程
2019-05-01
(4)CMake入门笔记--CMake官网教程
2019-05-01
(XWZ)的python学习笔记Ⅰ
2019-05-01
(XWZ)的Python学习笔记Ⅱ------面向对象编程
2019-05-01
(XWZ)的Python学习笔记Ⅲ——面向对象高级编程
2019-05-01
(XWZ)的python学习笔记Ⅳ——错误、调试和测试
2019-05-01
(XWZ)的Python学习笔记Ⅴ——I/O编程
2019-05-01