您的位置:首页 > 其它

【ZZULI】-1896-985的买饮料难题(思维)

2016-08-03 21:37 375 查看

Problem E: 985的买饮料难题

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 233  Solved: 123

SubmitStatusWeb
Board

Description

天气太热了,985制定了对未来的规划即第i天喝a[i]瓶饮料。为了节约开支,他打听到了第i天每瓶饮料的价格p[i]。
为了不让自己的规划落空,他想知道这n天他至少要花多少钱。
精明的985可以选择在任意一天买数目不限的饮料,而且他有一个神奇的冰箱,可以将提前购买的饮料保存下来(至少在这n天里是可以饮用的)。

Input

第一行输入一个整数t,代表有t组测试数据。
每组数据第一行输入一个整数n代表规划的总天数,接下来有n行,每行输入两个整数a[],p[]分别代表上面提到的信息。
注:1 <= t <= 30,1 <= n <= 1000,1 <= a[],p[] <= 100。

Output

输出一个整数代表最后的结果。

Sample Input

2225 5694 17539 2195 8973 909 5585 32

Sample Output

29986321

题解:因为饮料不会过期,所以总是存便宜的饮料。再遇到更便宜的更新即可

#include<cstdio>
#include<cstring>
#include<queue>
#include<stack>
#include<cmath>
#include<vector>
#include<algorithm>
using namespace std;
#define CLR(a,b)  memset(a,b,sizeof(a))
int main()
{
int u;
int a,p;
scanf("%d",&u);
while(u--)
{
int n;
scanf("%d",&n);
int minn=110;			//记录最便宜的饮料价格
int ans=0;
for(int i=1;i<=n;i++)
{
scanf("%d %d",&a,&p);
minn=min(minn,p);
ans+=a*minn;		//数量乘以价格
}
printf("%d\n",ans);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: