这道题和1151一样嘛!自己有打一边温习温习

详细讲解看

http://blog.csdn.net/youngyangyang04/article/details/7787693

#include<iostream>
#include<stdio.h>
#include<algorithm>
using namespace std;
#define N 1005
struct ode{int y1,y2,x,flag;
}node[N*3];
bool cmp(ode a,ode b){return a.x<b.x;
}
int y[N*2],pa[N*2];
struct Node{int l;int r;int s;int ml,mr,len;
}a[N*6];
void build(int i,int left,int right){a[i].l=left;a[i].r=right;a[i].len=0;a[i].s=0;a[i].mr=y[a[i].r];a[i].ml=y[a[i].l];if(a[i].r==a[i].l+1) return ;int mid=(left+right)>>1;build(i*2,left,mid);build(i*2+1,mid,right);
}
int len(int i){if(a[i].s>0){return a[i].mr-a[i].ml;}else if(a[i].r==a[i].l+1){return 0;}else{return a[i*2].len+a[i*2+1].len;}
}
void insert(int i,ode m){if(pa[a[i].l]==m.y1&&pa[a[i].r]==m.y2){a[i].s+=m.flag;a[i].len=len(i);return ;}if(m.y2<=pa[a[i*2].r]) insert(i*2,m);else if(m.y1>=pa[a[i*2+1].l]) insert(i*2+1,m);else{ode temp=m;temp.y2=pa[a[i*2].r];insert(i*2,temp);temp=m;temp.y1=pa[a[i*2+1].l];insert(i*2+1,temp);}a[i].len=len(i);
}
int main(){
//    freopen("in.txt","r",stdin);int x1,y1,x2,y2;int t=1;while(~scanf("%d%d%d%d",&x1,&y1,&x2,&y2)){if(x1==-1&&x2==-1&&y1==-1&&y2==-1){
//            cout<<t<<endl;if(t==1) continue;sort(y+1,y+t);for(int i=1;i<t;i++)pa[i]=y[i];sort(node+1,node+t,cmp);build(1,1,t-1);insert(1,node[1]);int sum=0;for(int i=2;i<t;i++){sum+=(node[i].x-node[i-1].x)*a[1].len;insert(1,node[i]);}printf("%d\n",sum);t=1;continue;}node[t].y1=y1;node[t].y2=y2;node[t].x=x1;node[t].flag=1;y[t++]=y1;node[t].y1=y1;node[t].y2=y2;node[t].x=x2;node[t].flag=-1;y[t++]=y2;}
}

poj 1389 Area of Simple Polygons 线段树扫面线,和1151一样的嘛相关推荐

  1. POJ 1389 Area of Simple Polygons(扫描线求面积)

    思路:纯纯扫描线求面积模板题,求点赞qaq. #include<iostream> #include<cstdio> #include<cstring> #incl ...

  2. 蓝桥杯 油漆面积【第八届】【省赛】【A组】线段树扫面线/求矩形相交面积/模拟

    资源限制 内存限制:256.0MB   C/C++时间限制:1.0s   Java时间限制:3.0s   Python时间限制:5.0s X星球的一批考古机器人正在一片废墟上考古. 该区域的地面坚硬如 ...

  3. poj 2528 Mayor's posters(线段树+离散化)

    1 /* 2 poj 2528 Mayor's posters 3 线段树 + 离散化 4 5 离散化的理解: 6 给你一系列的正整数, 例如 1, 4 , 100, 1000000000, 如果利用 ...

  4. POJ Area of Simple Polygons 扫描线

    这个题lba等神犇说可以不用离散化,但是我就是要用. 题干: DescriptionThere are N, 1 <= N <= 1,000 rectangles in the 2-D x ...

  5. POJ 2528 Mayor's posters(线段树)

    题目大意 贴海报.每张海报的高度都是一样的,唯独宽度不一样.每张海报只能占用整数倍的单位线段长度,贴了 n(n<=10000) 张海报之后,有几张能够看见(有一个角能看见这张海报也算被看见了)? ...

  6. 【POJ】2828 Buy Tickets(线段树+特殊的技巧/splay)

    http://poj.org/problem?id=2828 一开始敲了个splay,直接模拟. tle了.. 常数太大.. 好吧,说是用线段树.. 而且思想很拽.. (貌似很久以前写过貌似的,,) ...

  7. poj 3264 Balanced Lineup RMQ问题 线段树

    For the daily milking, Farmer John's N cows (1 ≤ N ≤ 50,000) always line up in the same order. One d ...

  8. POJ 2777 ZOJ 1610 HDU 1698 --线段树--区间更新

    直接将这3题 放一起了  今天在做线段树的东西 这3个都是区间更新的 查询方式互相不同 反正都可以放到一起吧 直接先上链接了 touch me touch me touch me 关于涉及到区间的修改 ...

  9. ACM练级日志:POJ 2886 约瑟夫环,线段树和反素数

    我昨天才知道模拟约瑟夫环是可以用线段树来解的-- 不妨假设总共有N个人,他们的编号是1~N(这个编号很重要,影响到后面的推导) 怎么解呢?我们用一棵线段树,每个节点记录一下这个区间还剩下多少人,一开始 ...

  10. CF558E A Simple Task 线段树

    题解: 这种题之前做过一个类似的题目,也是关于选择区间然后给区间进行排序. 这种题用线段树把排序转换成区间修改区间求和即可. 类似的题目:https://vjudge.net/problem/HDU- ...

最新文章

  1. 【字符串】大小写的转换
  2. wxHtml 示例:关于对话框测试
  3. Apollo产品对比
  4. discuz中又拍云在ie8,chrome22下不能上传的问题
  5. curl抓取页面是乱码 php_php解决curl编码问题-curl乱码-curl在post表单时乱码
  6. json转excel_手写JAVA实现个性化业务的Excel转JSON,效率提高99.99%
  7. 商业认知,在投资的时候,为什么别人是经常赚钱,而你却是亏损不断,让我们亏损的根源是什么?
  8. java.lang.NoClassDefFoundError:org/apache/commons/lang/exception/NestableRuntimeException
  9. oracle em登陆失败,oracle的em登陆失败解决办法
  10. mysql update 批量修改数据_MySQL 中实现数据的批量修改
  11. S2A哨兵数据的波段合成、镶嵌、TOA(大气表观反射率)和裁剪的操作
  12. 学习之路二十七:三种序列化方式的一些注意点
  13. 桌面应用软件开发语言调查(转)
  14. Aras Innovator-学-习-之-旅-
  15. 屏幕距离和坐便转换工具_视频分辨率转换器(mp4视频分辨率转换器)V2.0.1 官方版...
  16. 海洋cms(海洋视频内容管理系统) v12.5
  17. 手机尾号猜年龄骗局解密
  18. app中我的页面头像及背景效果实现
  19. Win11色温如何进行调整设置
  20. 如何在地图上显示多个红包商店 vue

热门文章

  1. 美团云的网络架构演进之路
  2. L - Farm Irrigation (并查集
  3. 物流货代公司管理系统
  4. day 22 封装 + property + classmethod + staticmethod
  5. python,错误、调试和测试
  6. jQuery 左侧滑动
  7. Delphi调用C++写的dll示例
  8. IBatis .NET 开发学习笔记——简要介绍
  9. Mac上Spotify 音乐添加到 djay Pro的详细教程
  10. 如何用EasyRecovery找回删除的文档(附注册机下载地址)