答案存在于

1.两个互相包含的区间

2.两个互不包含的区间

决策单调性显然

但是这代码很精妙啊,并不知道这个为什么能这样写

#include<cstdio>
#include<algorithm>
using namespace std;
long long ans;
int stack[1000005],f[1000005];
struct node{int l,r;
}a[1000005],A[1000005];
bool cmp(node a,node b){return a.l<b.l || a.l==b.l && a.r<b.r;
}
long long calc(int x,int y){if (A[x].r<A[y].l) return 0;return 1ll*(A[y].r-A[x].l)*(A[x].r-A[y].l);
}
int main(){int n;scanf("%d",&n);for (int i=1; i<=n; i++) scanf("%d%d",&a[i].l,&a[i].r);sort(a+1,a+n+1,cmp);int Last=0,ID=0;for (int i=1; i<=n; i++)if (a[i].r<=Last) {f[i]=1;ans=max(ans,1ll*(a[i].r-a[i].l)*(a[ID].r-a[ID].l));}else Last=a[i].r,ID=i;int N=0;for (int i=1; i<=n; i++) if (!f[i]) A[++N]=a[i];int top=2;for (int i=1; i<N; i++){if (top==i) top++;while (top<N && calc(i,top)<calc(i,top+1)) top++;ans=max(ans,calc(i,top));}printf("%lld\n",ans);return 0;
}

  

转载于:https://www.cnblogs.com/silenty/p/9862467.html

BZOJ 2687: 交与并相关推荐

  1. bzoj 2687 交与并

    http://www.elijahqi.win/archives/3208 Description 对于一个区间集合{A1,A2--AK}(K>1,Ai<>Aj{i<>j ...

  2. poi word转html 根号,根号算法 - 作业部落 Cmd Markdown 编辑阅读器

    根号算法 --如何让复杂度去掉维 数据结构 算法 By 分块 一般分块 板子&原理 SIZ=(int)sqrt(n);//块大小 for(inti=(x-1)*SIZ+1;i<=x*SI ...

  3. bzoj 3379: [Usaco2004 Open]Turning in Homework 交作业(区间DP)

    3379: [Usaco2004 Open]Turning in Homework 交作业 Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 50  S ...

  4. bzoj 2732 射箭 半平面交 解题报告

    Description 沫沫最近在玩一个二维的射箭游戏,如下图 1 所示,这个游戏中的 x 轴在地面,第一象限中有一些竖直线段作为靶子,任意两个靶子都没有公共部分,也不会接触坐标轴.沫沫控制一个位于( ...

  5. [BZOJ 1038][ZJOI 2008]瞭望塔(半平面交)

    题目链接 http://www.lydsy.com/JudgeOnline/problem.php?id=1038 思路 这个题在上海ACM/ICPC冬令营的比赛中也考过,不是很难,不过想要想到用半平 ...

  6. BZOJ 3379: [Usaco2004 Open]Turning in Homework 交作业

    Description     贝茜有C(1≤C≤1000)门科目的作业要上交,之后她要去坐巴士和奶牛同学回家. 每门科目的老师所在的教室排列在一条长为H(1≤H≤1000)的走廊上,他们只在课后接收 ...

  7. BZOJ 1007 [HNOI2008]水平可见直线 ——半平面交 凸包

    发现需要求一个下凸的半平面上有几个交点. 然后我们把它变成凸包的问题. 好写.好调.还没有精度误差. #include <map> #include <ctime> #incl ...

  8. BZOJ 1038 瞭望塔(半平面交)

    题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=1038 题意:给出一条折线,在折线上选择一点在这点放一个竖直的杆使得杆顶能够看到折线上每个 ...

  9. BZOJ 4872 luogu P3750 [六省联考2017]分手是祝愿

    4872: [Shoi2017]分手是祝愿 Time Limit: 20 Sec  Memory Limit: 512 MB [Submit][Status][Discuss] Description ...

最新文章

  1. 「ProtocolBuffers2」ProtocolBuffers2 c++简易入门
  2. 网站大访问量优化整体思路
  3. 福利 | 抽奖送现金送书《Web前端工程师修炼之道》
  4. 信息学奥赛一本通 1091:求阶乘的和 / 2026:【例4.12】阶乘和 / OpenJudge NOI 1.5 34
  5. Ngrok tunnel本地映射公网使用方案
  6. 软件工程概论总结第四章
  7. 阿里云自研数据仓库 AnalyticDB 再捧 TPC 全球冠军
  8. PHP5 Session 使用详解(一)
  9. 手写数字识别Caffe实现
  10. LTE下行物理层传输机制(6)-下行资源分配方式(Resource Allocation Type)
  11. Matlab学习笔记:网格线的粗细调整
  12. Logo创作灵魂(下篇)
  13. Linux C实现纯用户态抢占式多线程!
  14. 【RabbitMQ】基础四:路由模式(Routing)
  15. 一步一步实现WPF透明化窗口
  16. Windows实用工具推荐
  17. vue使用element-ui table 清除表格背景色以及表格边框线
  18. HTTP HTTPS 及网络请求与响应
  19. Springboot实现过滤器
  20. 数据泄露事件频发,数据安全迫在眉睫

热门文章

  1. 设置vs2019护眼编程背景色
  2. 基于FPGA的乒乓球比赛游戏
  3. 5644: C实验:复读机
  4. Python升级之路( Lv1 ) Python 入门
  5. 中国清洁供热行业运营状况与投资前景规划报告2022-2028年版
  6. html5页面做成电脑屏保,HTML5/Canvas 果冻动画屏保
  7. 互联网大厂产品面试分析(多年猎头通过候选人总结,着重感谢一位刘女士)
  8. Apache flume:写数据到Kafka
  9. 管控软件开发进度 4大关键项需要重视
  10. 下载网页图片-如何批量下载网页图片-批量图片下载工具免费