poj2398
来源:互联网 发布:一次性筷子知乎 编辑:程序博客网 时间:2024/06/06 00:16
Source Code
Problem: 2398 User: PraesidioMemory: 596K Time: 16MSLanguage: G++ Result: Accepted- Source Code
#include <cstdio>#include <cstring>#include <algorithm>#include <vector>using namespace std;const double eps=1e-8;typedef pair<int,int> pii;struct point{double x,y;point() {} point(double _x,double _y) : x(_x) ,y(_y) {}};double operator * (const point& p1,const point& p2) {return p1.x*p2.y-p1.y*p2.x;}//---------------------int n,m,x1,y1,x2,y2;int x,y;point a[1005];vector <pii> v;int ans[1005];void init(){int u,l;v.clear();for (int i=0;i<n;i++) {scanf("%d%d",&u,&l);v.push_back(make_pair(u,l));} v.push_back(make_pair(x2,x2));sort(v.begin(),v.end());for (int i=0;i<n;i++) {a[i]=point(v[i].first-v[i].second,y1-y2);}}int main(){while (~scanf("%d",&n)&&n) {scanf("%d%d%d%d%d",&m,&x1,&y1,&x2,&y2);init();memset(ans,0,sizeof(ans));a[n]=point(0,y1-y2);for (int j=0;j<m;j++) {scanf("%d%d",&x,&y);for (int i=0;i<=n;i++) {point tmp=point(x-v[i].second,y-y2);if (a[i]*tmp>=0) {ans[i]++;break;}}}printf("Box\n");for (int i=1;i<=m;i++) {int ret=0;for (int j=0;j<=n;j++) {if (ans[j]==i) ret++;}if (ret) printf("%d: %d\n",i,ret);}}return 0;}
0 0
- poj2398
- poj2398
- poj2318 poj2398
- poj2398 计算几何
- poj2398 - Toy Storage
- [Poj2398]Toy Storage
- POJ2398-Toy Storage
- POJ2398(计算几何)
- poj2398 Toy Storage
- POJ2398(POJ2318的姊妹篇)
- 【计算几何】 poj2398 Toy Storage
- poj2398+poj2318(计算几何+二分)
- POJ2398——Toy Storage
- POJ2318 TOYS, POJ2398 Toy Storage
- poj2398 Toy Storage【叉乘】
- poj2398叉积之点定位+二分
- POJ2398 POJ2318的加入排序版
- POJ2318 TOYS(叉积),POJ2398 TOY STORAGE
- android_sax解析
- 没有实际的限制
- android开发教程关于屏幕设计的建议
- 关于技术预研
- asdfg
- poj2398
- Golang实现的Base64加密
- [Cocos2d-x v3.x官方文档]场景转换(Transitions)
- Understanding JVM Internals
- 支付宝钱包从4人到200人移动互联网成长史-2014年4月江西IDC排行榜
- ***S5PV210(TQ210)学习笔记——内核移植与文件系统构建
- Android关于屏幕设计建议的开发教程
- JAVA语言基础组成
- ubuntu操作系统学习笔记之网络配置