Toy Storage--POJ2398(计算几何)
http://poj.org/problem?id=2398
这道题和上一道TOYS是一样的 就是输出不一样 还有就是这个给的是乱序 你要先对挡板排序
#include <iostream>
#include <cstring>
#include <algorithm>
#include <queue>
#include <cstdio>
#include <cstdlib>
#include <cctype>
#include <math.h>
#include <ctype.h> using namespace std;
#define memset(a,b) memset(a,b,sizeof(a))
#define N 5500
typedef long long ll; struct node
{
int x, y, v;
}p[N],u[N];
int y2; int cmp(const void *a,const void *b)
{
struct node *c, *f;
c=(struct node *)a;
f=(struct node *)b;
return c->x-f->x;
} int Find(int nx,int ny,int l,int r)
{
if(l==r-)
return l;
int mid=(l+r)/;
node d;
d.x=nx-p[mid].v;
d.y=ny-y2;
if((d.x*p[mid].y)-(d.y*p[mid].x)>)
{
l=mid;
r=r;
return Find(nx,ny,l,r);
}
else if((d.x*p[mid].y)-(d.y*p[mid].x)<)
{
l=l;
r=mid;
return Find(nx,ny,l,r);
}
return ;
} int main()
{
int n,m,x1,x2,y1,a[N];
while(scanf("%d",&n),n)
{
memset(a,);
scanf("%d %d %d %d %d",&m,&x1,&y1,&x2,&y2);
p[].x=x1;
p[].y=y2;
p[].v=x1;
for(int i=;i<=n;i++)
{
scanf("%d %d",&u[i].x,&u[i].y);
}
qsort(u+,n,sizeof(u[]),cmp);
for(int i=;i<=n;i++)
{
p[i].x=u[i].x-u[i].y;
p[i].y=y1-y2;
p[i].v=u[i].y;
}
p[n+].x=x2;
p[n+].y=y1;
p[n+].v=x2;
int k,v;
for(int i=;i<m;i++)
{
scanf("%d %d",&k,&v);
int aa=Find(k,v,,n+);
a[aa]++;
}
int ans[N];
memset(ans,);
for(int i=;i<=n;i++)
{
if(a[i])
{
ans[a[i]]++;
}
}
printf("Box\n");
for(int i=;i<=n;i++)
{
if(ans[i])
printf("%d: %d\n",i,ans[i]);
}
}
return ;
}
Toy Storage--POJ2398(计算几何)的更多相关文章
- POJ 2398 Toy Storage(计算几何,叉积判断点和线段的关系)
Toy Storage Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 3146 Accepted: 1798 Descr ...
- [POJ2398]Toy Storage(计算几何,二分,判断点在线段的哪一侧)
题目链接:http://poj.org/problem?id=2398 思路RT,和POJ2318一样,就是需要排序,输出也不一样.手工画一下就明白了.注意叉乘的时候a×b是判断a在b的顺时针还是逆时 ...
- poj2398 Toy Storage 计算几何,叉积,二分
poj2398 Toy Storage 链接 poj 题目大意 这道题的大概意思是先输入6个数字:n,m,x1,y1,x2,y2.n代表卡片的数量,卡片竖直(或倾斜)放置在盒内,可把盒子分为n+1块区 ...
- 2018.07.04 POJ 2398 Toy Storage(二分+简单计算几何)
Toy Storage Time Limit: 1000MS Memory Limit: 65536K Description Mom and dad have a problem: their ch ...
- poj 2398 Toy Storage(计算几何)
题目传送门:poj 2398 Toy Storage 题目大意:一个长方形的箱子,里面有一些隔板,每一个隔板都可以纵切这个箱子.隔板将这个箱子分成了一些隔间.向其中扔一些玩具,每个玩具有一个坐标,求有 ...
- poj 2398 Toy Storage(计算几何 点线关系)
Toy Storage Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 4588 Accepted: 2718 Descr ...
- POJ 2398 - Toy Storage 点与直线位置关系
Toy Storage Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5439 Accepted: 3234 Descr ...
- POJ 2318 TOYS && POJ 2398 Toy Storage(几何)
2318 TOYS 2398 Toy Storage 题意 : 给你n块板的坐标,m个玩具的具体坐标,2318中板是有序的,而2398无序需要自己排序,2318要求输出的是每个区间内的玩具数,而231 ...
- Toy Storage
Toy Storage 题型与2318 TOYS一样,注意要对线段排序,现在模板又更新了~~ #include<iostream> #include<cstdio> #incl ...
- POJ 2398 Toy Storage (叉积判断点和线段的关系)
题目链接 Toy Storage Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 4104 Accepted: 2433 ...
随机推荐
- ASP.NET Web API FilterAttribute假想
偶然的测试发现API FilterAttribute没用引用只会初始化一次 比如: 如果是 Global Action Filter, 则全局只会初始化一次 针对于不同的Controller级别的Ac ...
- 洛谷 P2894 [USACO08FEB]酒店Hotel
题目描述 The cows are journeying north to Thunder Bay in Canada to gain cultural enrichment and enjoy a ...
- COGS 2111. [NOIP2015普及]扫雷游戏
★ 输入文件:2015mine.in 输出文件:2015mine.out 简单对比时间限制:1 s 内存限制:256 MB [题目描述] 扫雷游戏是一款十分经典的单机小游戏.在 n 行 ...
- Elasticsearch学习(二)————搜索
Elasticsearch1.query string search1.1.搜索全部// 1. GET http://ip:9200/test/test/_search 结果: { "too ...
- zabbix设置多个收件人
1.建群组 2.添加群组权限 3.添加用户,归属到上面新建的组 4.动作里发送消息给新建的组 5.这样设置后,管理员账号不用设置收件媒介
- 下拉列表事件 Dropdown iview
<Dropdown @on-click="export"> <Button icon='md-log-out'> 000l <Icon type=&q ...
- node程序的部署神器pm2的基本使用
pm2是从nodejs衍生出来的服务器进程管理工具,可以做到开机就启动nodejs.当然了,也可以用nohup来做这件事情的. 前言 众所周知,Node.js运行在Chrome的JavaScript运 ...
- JavaScript中通过原型添加方法,解决数据共享问题,节省内存空间
涉及知识点:(1)原型的引入(2)构造函数.原型对象和实例对象之间的关系(3)__proto__和prototype的理解 直接举例:在自定义构造函数创建对象时,因为创建的对象使用的不是同一个方法,所 ...
- 去除ie下select框箭头
select::-ms-expand { display: none;}兼容ie10及以上
- 9. InnoDB通用表空间
9. InnoDB通用表空间 通用表空间是InnoDB 使用CREATE TABLESPACE语法创建的共享表空间.本节中的以下主题描述了常规表空间功能和功能: 通用表空间功能 创建通用表空间 将表添 ...