CodeForces 16B Burglar and Matches
来源:互联网 发布:淘宝上便宜的文具店 编辑:程序博客网 时间:2024/06/06 03:57
Description
A burglar got into a matches warehouse and wants to steal as many matches as possible. In the warehouse there are m containers, in thei-th container there are ai matchboxes, and each matchbox contains bi matches. All the matchboxes are of the same size. The burglar's rucksack can hold n matchboxes exactly. Your task is to find out the maximum amount of matches that a burglar can carry away. He has no time to rearrange matches in the matchboxes, that's why he just chooses not more than n matchboxes so that the total amount of matches in them is maximal.
Input
The first line of the input contains integer n (1 ≤ n ≤ 2·108) and integer m (1 ≤ m ≤ 20). The i + 1-th line contains a pair of numbersai and bi (1 ≤ ai ≤ 108, 1 ≤ bi ≤ 10). All the input numbers are integer.
Output
Output the only number — answer to the problem.
Sample Input
7 35 102 53 6
62
3 31 32 23 1
7
简单贪心
#include<iostream>#include<cstdlib>#include<cstring>#include<cstdio>#include<cmath>#include<vector>#include<string>#include<queue>#include<map>#include<algorithm>using namespace std;const int maxn=1e3+10;int n,m;struct point{ int x,y; void read(){scanf("%d%d",&x,&y);} bool operator<(const point&a)const{return y>a.y;}}a[maxn];int main(){ while(~scanf("%d%d",&n,&m)) { for (int i=0;i<m;i++) a[i].read(); sort(a,a+m); int ans=0; for (int i=0;i<m;i++) { if (n>=a[i].x) {ans+=a[i].x*a[i].y; n-=a[i].x;} else {ans+=n*a[i].y; n=0;} } printf("%d\n",ans); } return 0;}
- CodeForces 16B Burglar and Matches(贪心)
- CodeForces 16B Burglar and Matches (贪心)
- CodeForces 16B Burglar and Matches
- 16B. Burglar and Matches
- 16BBurglar and Matches
- codeforces B. Ciel and Duel
- codeforces B. Sereja and Contests
- codeforces B. Jzzhu and Sequences
- 【CODEFORCES】 B. Pashmak and Flowers
- 【CODEFORCES】 B. Caisa and Pylons
- codeforces B. Pasha and String
- 【CODEFORCES】 B. Dreamoon and WiFi
- 【CODEFORCES】 B. Dreamoon and Sets
- 【CODEFORCES】 B. Friends and Presents
- codeforces B. Mishka and trip
- codeforces B. Memory and Trident
- Codeforces B. Coupons and Discounts
- codeforces B. Mike and strings
- CodeForces 15B Laser
- a++ 和 ++a 注意事项
- 1219 骑士游历 解答
- Android BLE 扫描 通信
- 使用datagrateview控件时,显示数据库中表的信息
- CodeForces 16B Burglar and Matches
- CodeForces 15D Map
- 第5周YD督促训练 Ace of Aces
- 动态规划之To the Max
- 1、数据库启动与关闭相关(状态)
- #1049 : 后序遍历
- POJ2421 Constructing Roads(最小生成树)
- 排序算法
- Good-turning估计