国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

封印一擊 Seal

2019-11-11 01:40:55
字體:
供稿:網(wǎng)友

封印一擊

(seal.pas/c/cpp)

題目描述

“圣主 applepi 于公元 2011 年 9 月創(chuàng)造了 Nescafe,它在散發(fā)了 16 次光輝之后與公元2011 年 11 月 12 日被封印為一顆魂珠,貯藏于 Nescafe 神塔之中。公元 2012 年 9 月,圣主帶領(lǐng)四大護(hù)法重啟了 Nescafe,如今已經(jīng)是 Nescafe 之魂的第 30 次傳播了。不久,它就要被 第二次封印,而變成一座神杯……”applepi 思索著 Nescafe 的歷史,準(zhǔn)備著第二次封印。 Nescafe 由 n 種元素組成(編號為 1~n),第 i 種元素有一個(gè)封印區(qū)間[ai,bi]。當(dāng)封印力度E 小于 ai 時(shí),該元素將獲得 ai 的封印能量;當(dāng)封印力度 E 在 ai 到 bi 之間時(shí),該元素將獲得E 的封印能量;而當(dāng)封印力度 E 大于 bi 時(shí),該元素將被破壞從而不能獲得任何封印能量。 現(xiàn)在圣主 applepi 想選擇恰當(dāng)?shù)?E,使得封印獲得的總能量盡可能高。為了封印的最后一擊 盡量完美,就請你寫個(gè)程序幫他計(jì)算一下吧!

輸入格式

第一行一個(gè)整數(shù) N。 接下來 N 行每行兩個(gè)整數(shù) ai、bi,第 i+1 行表示第 i 種元素的封印區(qū)間。

輸出格式

兩個(gè)用空格隔開的整數(shù),第一個(gè)數(shù)是能夠獲得最多總能量的封印力度 E,第二個(gè)數(shù)是獲 得的總能量大小。當(dāng)存在多個(gè) E 能夠獲得最多總能量時(shí),輸出最小的 E。

樣例輸入

2 5 10 20 25

樣例輸出

10 30

數(shù)據(jù)范圍與約定

對于 50% 的數(shù)據(jù),1<=N<=1000,1<=ai<=bi<=10000。 對于 100% 的數(shù)據(jù),1<=N<=10^5,1<=ai<=bi<=10^9。


思路想對了,沒敢寫,暴力50分,果然是做題太少了。

正解思路:

很容易想到,最優(yōu)解的E肯定是某個(gè)區(qū)間的端點(diǎn)!所以我們把所有區(qū)間的左右端點(diǎn)取出,從小到大排序,掃描一遍。維護(hù)一個(gè)變量sa,表示掃描到的值為p時(shí),左端點(diǎn)大于p的所有區(qū)間的左端點(diǎn)之和;維護(hù)一個(gè)變量sp,表示掃描到的值為p時(shí),p在左右端點(diǎn)之間的區(qū)間個(gè)數(shù)。那么此時(shí)可以封印一擊得到的能量就是sa+sp*p。
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;struct node{int x,y;}c[200010];int a[100010],b[100010],n,i,p;long long sa,sp,ans;bool cmp(const node & a,const node & b){return a.x<b.x||a.x==b.x&&a.y>b.y;}int main(){ freopen("seal.in","r",stdin); freopen("seal.out","w",stdout); cin>>n; for(i=1;i<=n;i++) { scanf("%d%d",&a[i],&b[i]); sa+=a[i];//sa:suma c[i].x=a[i],c[i].y=1; c[n+i].x=b[i],c[n+i].y=-1; } sort(c+1,c+2*n+1,cmp); for(i=1;i<=2*n;i++) if(c[i].y==1) { sp++,sa-=c[i].x; if(ans<sa+sp*c[i].x) ans=sa+sp*c[i].x,p=c[i].x; } else { if(ans<sa+sp*c[i].x) ans=sa+sp*c[i].x,p=c[i].x; sp--; } cout<<p<<' '<<ans<<endl; return 0;}
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 克什克腾旗| 喀什市| 稷山县| 济宁市| 广德县| 太湖县| 鱼台县| 鄯善县| 宜君县| 曲阜市| 天峨县| 积石山| 新宁县| 庆城县| 孝义市| 安庆市| 韶关市| 延安市| 印江| 剑川县| 保山市| 尚义县| 启东市| 盘锦市| 建昌县| 元朗区| 瓮安县| 九龙坡区| 桃江县| 玉屏| 张家口市| 曲松县| 上犹县| 红河县| 安西县| 堆龙德庆县| 霍州市| 娱乐| 华坪县| 鹰潭市| 中西区|