HDU 6012 Lotus and Horticulture
来源:互联网 发布:vb建立数据库 编辑:程序博客网 时间:2024/06/03 21:04
Solution
讨论版误导我好久
[li,ri]确实是闭区间,但是温度是可以取实数的,比如
1 2 100 300 200
2 3 300 100 200
ans=600 取2.5
所以我们保存坐标的时候需要保存li与ri+0.5
剩下的事情,就是排序+二分+前缀和的运用了
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#define ll long long#define db doubleusing namespace std;int n,v,cas,tot;int a[50005],b[50005],c[50005];double t[100005];ll now,ans,s;struct ty{ db d; int id; ll sa,sb,sc;}L[50005],R[50005];bool cmp1(ty x,ty y){ return x.d>y.d;}bool cmp2(ty x,ty y){ return x.d<y.d;}int erfen1(int l,int r,db x){ if(l>r) return r; int mid=(l+r)/2; if(x>=L[mid].d) return erfen1(l,mid-1,x); else return erfen1(mid+1,r,x);}int erfen2(int l,int r,db x){ if(l>r) return r; int mid=(l+r)/2; if(x>R[mid].d) return erfen2(mid+1,r,x); else return erfen2(l,mid-1,x);}int main(){ cin>>cas; while(cas--) { cin>>n; tot=0;ans=0;s=0; for(int i=1;i<=n;i++) { scanf("%lf%lf%d%d%d",&L[i].d,&R[i].d,&a[i],&b[i],&c[i]); L[i].id=i; R[i].id=i; tot++; t[tot]=L[i].d; tot++; t[tot]=R[i].d+0.5; s=s+a[i]; } sort(t+1,t+tot+1); sort(L+1,L+n+1,cmp1); sort(R+1,R+n+1,cmp2); for(int i=1;i<=n;i++) { v=L[i].id; L[i].sa=L[i-1].sa+a[v]; L[i].sb=L[i-1].sb+b[v]; L[i].sc=L[i-1].sc+c[v]; v=R[i].id; R[i].sa=R[i-1].sa+a[v]; R[i].sb=R[i-1].sb+b[v]; R[i].sc=R[i-1].sc+c[v]; } for(int i=1;i<=tot;i++) { v=erfen1(1,n,t[i]); now=s-L[v].sa+L[v].sc; v=erfen2(1,n,t[i]); now=now-R[v].sa+R[v].sb; ans=max(ans,now); } ans=max(ans,L[n].sc); printf("%I64d\n",ans); } return 0;}
0 0
- HDU 6012 Lotus and Horticulture
- hdu 6012 Lotus and Horticulture
- HDU 6012 Lotus and Horticulture
- hdu 6012 Lotus and Horticulture
- Hdu 6012 Lotus and Horticulture【思维】
- [hdu 6012Lotus and Horticulture]优先队列
- 【HDU 6012 Lotus and Horticulture】+ 思维 + map
- HDU 6012 Lotus and Horticulture 离散化
- hdu 6012 Lotus and Horticulture(贪心)
- HDOJ 6012 Lotus and Horticulture
- hdu 6012 Lotus and Horticulture 思维+前缀和处理
- BestCoder Round #91 1001 (HDU 6011 Lotus and Characters) 1002 (HDU 6012 Lotus and Horticulture)
- 【HDOJ】【BC91】6012 Lotus and Horticulture
- ***【杭电6012】Lotus and Horticulture
- Lotus and Horticulture
- Lotus and Horticulture
- HDU 6012 Lotus and Horticulture [离散化+前缀和处理]【思维】
- HDU6012 Lotus and Horticulture 扫描
- Java之美[从菜鸟到高手演变]之设计模式二
- Windows快捷操作技巧
- 建新站到底是用二级域名还是二级目录?
- node修改后需频繁手动重启的解决方法
- Docker 容器日志收集
- HDU 6012 Lotus and Horticulture
- linux 笔记day06
- 进程间的通讯方式
- python容器
- 网页源代码查看器
- 构造代码块
- 读取Properties信息工具类
- Dozer(JavaBean的映射工具)开发手册
- iOS打包机器人-通过Python轻松实现一键打包上传Fir.im并发送邮件通知测试人员