http://poj.org/problem?id=2398

这道题和上一道TOYS是一样的   就是输出不一样  还有就是这个给的是乱序  你要先对挡板排序

  1. #include <iostream>
  2. #include <cstring>
  3. #include <algorithm>
  4. #include <queue>
  5. #include <cstdio>
  6. #include <cstdlib>
  7. #include <cctype>
  8. #include <math.h>
  9. #include <ctype.h>
  10.  
  11. using namespace std;
  12. #define memset(a,b) memset(a,b,sizeof(a))
  13. #define N 5500
  14. typedef long long ll;
  15.  
  16. struct node
  17. {
  18. int x, y, v;
  19. }p[N],u[N];
  20. int y2;
  21.  
  22. int cmp(const void *a,const void *b)
  23. {
  24. struct node *c, *f;
  25. c=(struct node *)a;
  26. f=(struct node *)b;
  27. return c->x-f->x;
  28. }
  29.  
  30. int Find(int nx,int ny,int l,int r)
  31. {
  32. if(l==r-)
  33. return l;
  34. int mid=(l+r)/;
  35. node d;
  36. d.x=nx-p[mid].v;
  37. d.y=ny-y2;
  38. if((d.x*p[mid].y)-(d.y*p[mid].x)>)
  39. {
  40. l=mid;
  41. r=r;
  42. return Find(nx,ny,l,r);
  43. }
  44. else if((d.x*p[mid].y)-(d.y*p[mid].x)<)
  45. {
  46. l=l;
  47. r=mid;
  48. return Find(nx,ny,l,r);
  49. }
  50. return ;
  51. }
  52.  
  53. int main()
  54. {
  55. int n,m,x1,x2,y1,a[N];
  56. while(scanf("%d",&n),n)
  57. {
  58. memset(a,);
  59. scanf("%d %d %d %d %d",&m,&x1,&y1,&x2,&y2);
  60. p[].x=x1;
  61. p[].y=y2;
  62. p[].v=x1;
  63. for(int i=;i<=n;i++)
  64. {
  65. scanf("%d %d",&u[i].x,&u[i].y);
  66. }
  67. qsort(u+,n,sizeof(u[]),cmp);
  68. for(int i=;i<=n;i++)
  69. {
  70. p[i].x=u[i].x-u[i].y;
  71. p[i].y=y1-y2;
  72. p[i].v=u[i].y;
  73. }
  74. p[n+].x=x2;
  75. p[n+].y=y1;
  76. p[n+].v=x2;
  77. int k,v;
  78. for(int i=;i<m;i++)
  79. {
  80. scanf("%d %d",&k,&v);
  81. int aa=Find(k,v,,n+);
  82. a[aa]++;
  83. }
  84. int ans[N];
  85. memset(ans,);
  86. for(int i=;i<=n;i++)
  87. {
  88. if(a[i])
  89. {
  90. ans[a[i]]++;
  91. }
  92. }
  93. printf("Box\n");
  94. for(int i=;i<=n;i++)
  95. {
  96. if(ans[i])
  97. printf("%d: %d\n",i,ans[i]);
  98. }
  99. }
  100. return ;
  101. }

Toy Storage--POJ2398(计算几何)的更多相关文章

  1. POJ 2398 Toy Storage(计算几何,叉积判断点和线段的关系)

    Toy Storage Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3146   Accepted: 1798 Descr ...

  2. [POJ2398]Toy Storage(计算几何,二分,判断点在线段的哪一侧)

    题目链接:http://poj.org/problem?id=2398 思路RT,和POJ2318一样,就是需要排序,输出也不一样.手工画一下就明白了.注意叉乘的时候a×b是判断a在b的顺时针还是逆时 ...

  3. poj2398 Toy Storage 计算几何,叉积,二分

    poj2398 Toy Storage 链接 poj 题目大意 这道题的大概意思是先输入6个数字:n,m,x1,y1,x2,y2.n代表卡片的数量,卡片竖直(或倾斜)放置在盒内,可把盒子分为n+1块区 ...

  4. 2018.07.04 POJ 2398 Toy Storage(二分+简单计算几何)

    Toy Storage Time Limit: 1000MS Memory Limit: 65536K Description Mom and dad have a problem: their ch ...

  5. poj 2398 Toy Storage(计算几何)

    题目传送门:poj 2398 Toy Storage 题目大意:一个长方形的箱子,里面有一些隔板,每一个隔板都可以纵切这个箱子.隔板将这个箱子分成了一些隔间.向其中扔一些玩具,每个玩具有一个坐标,求有 ...

  6. poj 2398 Toy Storage(计算几何 点线关系)

    Toy Storage Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 4588   Accepted: 2718 Descr ...

  7. POJ 2398 - Toy Storage 点与直线位置关系

    Toy Storage Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 5439   Accepted: 3234 Descr ...

  8. POJ 2318 TOYS && POJ 2398 Toy Storage(几何)

    2318 TOYS 2398 Toy Storage 题意 : 给你n块板的坐标,m个玩具的具体坐标,2318中板是有序的,而2398无序需要自己排序,2318要求输出的是每个区间内的玩具数,而231 ...

  9. Toy Storage

    Toy Storage 题型与2318 TOYS一样,注意要对线段排序,现在模板又更新了~~ #include<iostream> #include<cstdio> #incl ...

  10. POJ 2398 Toy Storage (叉积判断点和线段的关系)

    题目链接 Toy Storage Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 4104   Accepted: 2433 ...

随机推荐

  1. IOS动画之抖动

    -(void)shakeView:(UIView*)viewToShake { CGFloat t =2.0; CGAffineTransform translateRight  =CGAffineT ...

  2. [Java 8] (8) Lambda表达式对递归的优化(上) - 使用尾递归 .

    递归优化 很多算法都依赖于递归,典型的比如分治法(Divide-and-Conquer).但是普通的递归算法在处理规模较大的问题时,常常会出现StackOverflowError.处理这个问题,我们可 ...

  3. COGS 2274. [HEOI 2016] tree

    ★☆   输入文件:heoi2016_tree.in   输出文件:heoi2016_tree.out   简单对比时间限制:1 s   内存限制:128 MB 这道题数据弱到炸了 . 第一次做用树刨 ...

  4. Hadoop分布式集群安装

        环境准备     操作系统使用ubuntu-16.04.2 64位 JDK使用jdk1.8 Hadoop使用Hadoop 2.8版本     镜像下载  操作系统     操作系统使用ubun ...

  5. SSAS 系列01- DAX公式常用公式

    计算第一次购买时间 CALCULATE(FIRSTDATE(FactInternetSales[OrderDate]),ALLEXCEPT(FactInternetSales,FactInternet ...

  6. [Python學習筆記] 抓出msg信件檔裡的附件檔案

    想要把msg信件檔案的附件抓出來做處理,找到了這個Python 模組 msg-extractor 使用十分容易,但是這個模組是要在terminal裡執行,無法直接打在IDLE的編輯器上 所以稍微做了修 ...

  7. Node + Express + MySQL 接口开发完整案例

    https://blog.csdn.net/u013216976/article/details/85273770 https://github.com/Apache-Ra/node-express- ...

  8. Markdown的安装和语法

    步骤: 1.打开webstorm,File-->Setting-->输入plugin-->Install JetBrains plugin-->输入markdown--> ...

  9. ios 自定义delegate(一)

    在自定义协议的头文件 .h中 @protocol NSDelegate <NSObject>@optional  //可选 - (void)OnOption:(NSString *)pSt ...

  10. Go:单元测试

    测试用的文件名必须以 _test.go 结尾: 测试用的函数名必须以 Test 开头,一般来说:Test+被测试的函数名(第一个字母必须大写): func TestXx(t *testing.T) { ...