首页 > 其他 > 详细

洛谷P2234 [HNOI2002]营业额统计

时间:2019-02-04 00:54:29      阅读:188      评论:0      收藏:0      [点我收藏+]
 1 #include<iostream>
 2 #include<cstdio>
 3 #include<algorithm>
 4 #include<set>
 5 using namespace std;
 6 typedef long long LL;
 7 typedef set<LL>::iterator setit;
 8 const LL INF=0x3f3f3f3f3f3f3f3f;
 9 int n;
10 LL ans;
11 set<LL> s;
12 int main(){
13     scanf("%d",&n);
14     scanf("%lld",&ans);s.insert(ans); 
15     for(int i=1;i<n;++i){
16         LL tmp,x=INF,y=INF;
17         scanf("%lld",&tmp);
18         if(s.find(tmp)!=s.end()) continue;//已存在相同的数 
19         setit it=s.upper_bound(tmp);
20         if(it!=s.end()) x=abs(*it-tmp);//若能找到不小于它的数 求出两数之差 
21         if(it!=s.begin()) y=abs(*(--it)-tmp);//若能找到不大于它的数 求出两数之差 
22         ans+=min(x,y);//比较两个差值的大小 
23         s.insert(tmp);//插入该数 
24     }
25     printf("%lld",ans);
26     return 0;
27 }

 

洛谷P2234 [HNOI2002]营业额统计

原文:https://www.cnblogs.com/yu-xing/p/10351305.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!