计算几何基础之“玻璃球”
来源:互联网 发布:淘宝所有分类怎么去掉 编辑:程序博客网 时间:2024/06/11 10:00
思路1:暴力判断(数据比较弱)
思路2:叉积
#include<bits/stdc++.h>using namespace std;struct node{ int x,y;};struct Line{ node a,b;}line[5005];int n,m,ans[5005];int cross(node p1,node p2,node p3){ return (p2.x-p1.x)*(p3.y-p1.y)-(p3.x-p1.x)*(p2.y-p1.y);}void judge(node d){ int i; for(i=0;i<n;++i) if(cross(line[i].b,d,line[i].a)<=0) { ans[i]++; return; } else continue; ans[n]++; return;}int main(){ int i; node l,r,tmp; scanf("%d%d%d%d%d%d",&n,&m,&l.x,&l.y,&r.x,&r.y); memset(ans,0,sizeof(ans)); for(i=0;i<n;++i) { scanf("%d%d",&line[i].a.x,&line[i].b.x); line[i].a.y=l.y; line[i].b.y=r.y; } for(i=0;i<m;++i) { scanf("%d%d",&tmp.x,&tmp.y); judge(tmp); } for(i=0;i<=n;++i) printf("%d: %d\n",i,ans[i]); return 0;}
阅读全文
0 0
- 计算几何基础之“玻璃球”
- 计算几何之基础篇
- 计算几何之基础篇
- 计算几何基础
- [基础]计算几何
- 计算几何基础
- 计算几何 基础
- 基础算法--计算几何
- 计算几何基础
- 计算几何基础
- 计算几何-基础篇
- 计算几何基础
- 计算几何基础题目
- 基础算法--计算几何
- Segments(计算几何基础)
- 二维计算几何基础
- 二维计算几何基础
- (7)计算几何基础
- 关于C的二级指针的问题
- C语言中的static 详细分析
- can't find file to patch at input line 3 错误原因
- cs231n assignment(1.1):kNN分类器
- 用java语言写一个环形队列
- 计算几何基础之“玻璃球”
- poi导入导出excel
- Android 框架-ImageLoader 图片加载框架
- iOS ping++支付功能实现
- myeclips或eclips开发中,Tomcat遇到8080端口被占用
- Kotlin控制台输入2
- 面试题13:O(1)时间内删除链表节点
- ubuntu 14 cuda8.0 cudnn5.1 anaconda tensorflow opencv 的安装
- 做软件的自动化测试一般用什么工具?