description
小n 最近迷上了購物每天都讓小a 和小t 陪她逛街拿東西。最近商店出了這樣的乙個
活動:買東西送積分,就是買一件物品,送當前物品的積分ci*當前的倍率,初始倍率是1;
當倍率是i 的時候,如果你買的物品等於ti 個,那麼倍率將加1.最多積分的人可以得到超限
量版的圓神手辦。小n 十分喜歡這個手辦但是她又有自己的購物計畫,於是她想在這個計
劃下盡量提高自己的積分。她有n 種東西要買,其中第i 種物品她要買ki 個,每個可以得到
ci 的積分。請告訴她積分最多能得到多少吧。
input
第一行有乙個整數n表示要買的種類。
接下來n行每行2個整數ki,ci表示數量和積分
接下來一行有乙個正整數t表示獎勵的倍數
接下來一行有t個遞增的整數ti表示買了ti個物品之後以後買的物品得到的積分倍率將是(i+1)
output
乙個整數,表示小n能得到的最多積分
sample input
15 3
23 6
sample output
21data constraint
hint
前3個物品得到的積分是3 * 3 * 1=9,後面2個物品的積分是3 * 2 * 2=12
60%的資料n<=10,sigma(ki)<=1000000
100%的資料n<=100,t<=100,ki<=10 ^ 9,0<=ci<=1000,ti<=10^12..
...分析
貪心從小到大排序ki
用小的ki把前面的ti填滿,再用後面大的倍率把剩下的ki乘起來加上
這樣才積分最大化..
....
程式:
#include#include#include#includeusing namespace std;
long long tj=0,ans=0,t[110],sum=0;
int n,m;
struct edge
a[110];
bool cmp(edge x,edge y)
else
if (t[p]==a[q].k)
if (p>m)
}printf("%lld",ans);
return 0;
}
NOIP2012模擬10 6 購買
description 小n 最近迷上了購物每天都讓小a 和小t 陪她逛街拿東西。最近商店出了這樣的乙個 活動 買東西送積分,就是買一件物品,送當前物品的積分ci 當前的倍率,初始倍率是1 input 第一行有乙個整數n表示要買的種類。接下來n行每行2個整數ki,ci表示數量和積分 接下來一行有乙個...
NOIP2012模擬10 6 填充棋盤
description 橫一劃豎一劃,橫一劃豎一劃 小r畫出了乙個n m的棋盤。由於noip快要到了,小r有了乙個奇妙的想法。在棋盤的每乙個小方格中填入n,o,i,p這4個字母中的乙個,若棋盤中每乙個2 2的小棋盤中都有n,o,i,p這4個字母,小r就認為這個棋盤是幸運棋盤。小r想知道一共有多少種不...
NOIP2012模擬10 25 旅行
給定乙個n行m列的字元矩陣,代表空地,x 代表障礙。移動的規則是 每秒鐘以上下左右四個方向之一移動一格,不能進入障礙。計算 在空地中隨機選擇起點和終點 可以重合,此時最短耗時為0 從起點移動到終點最短耗時的平均值。每一行每一列至多有1個障礙,並且障礙不在對角線方向相鄰。以下矩陣是不合法的 x x.第...