HDU ACM 2187 悼念512汶川大地震遇难同胞——老人是真饿了
来源:互联网 发布:南国英雄传 知乎 编辑:程序博客网 时间:2024/05/21 10:50
原题描述
Problem Description
对于幸存的灾民来说,最急待解决的显然是温饱问题,救灾部队一边在组织人员全力打通交通,一边在组织采购粮食。现在假设下拨了一定数量的救灾经费要去市场采购大米(散装)。如果市场有m种大米,各种大米的单价和重量已知,请问,为了满足更多灾民的需求,最多能采购多少重量的大米呢?
Input
输入数据首先包含一个正整数C,表示有C组测试用例,每组测试用例的第一行是两个整数n和m(0
Output
对于每组测试数据,请输出能够购买大米的最多重量(你可以假设经费买不光所有的大米)。
每个实例的输出占一行,保留2位小数。
Sample Input
1
7 2
3 3
4 4
Sample Output
2.33
解题思路
傲娇了,没有写。参考本博客类似的贪心排序题。
参考代码
#include <iostream>#include <algorithm>#include <iomanip>using namespace std;struct rice{ int p; int h;}r[1001];bool comp(rice r1, rice r2){ return r1.p < r2.p;}int main(){ int c, n, m; double weight; double money; int k; cin >> c; while (c--) { cin >> n >> m; weight = 0; money = (double)n; k = 0; for (int i = 0; i < m; i++) { cin >> r[i].p >> r[i].h; } sort(r, r + m, comp); while (money > 0.0) { if ((double)(r[k].p * r[k].h) >= money) { weight += money / (double)r[k].p; money = 0.0; } else { weight += (double)r[k].h; money -= (double)(r[k].p * r[k].h); k++; } } cout << setprecision(2) << fixed << weight << endl; }}
0 0
- 悼念512汶川大地震遇难同胞——老人是真饿了 hdu acm 2187 c++
- HDU ACM 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- HDU 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- HDU 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- HDU 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- hdu 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- hdu 2187 悼念512汶川大地震遇难同胞——老人是真饿了 贪心
- hdu 2187 悼念512汶川大地震遇难同胞——老人是真饿了 (贪心)
- hdu 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- HDU 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- hdu 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- hdu-2187-悼念512汶川大地震遇难同胞——老人是真饿了
- hdu 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- hdu 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- hdu-2187悼念512汶川大地震遇难同胞——老人是真饿了(贪心)
- hdu 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- hdu 2187 悼念512汶川大地震遇难同胞——老人是真饿了(贪心)
- HDU 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- 快速排序
- DataSnap几个模块的学习笔记
- 关于JS中的引用和复制(传值和传址)
- ZeroMQ之模式二 发布者订阅者(publish-subscribe)
- samba服务器再次启动问题
- HDU ACM 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- 寻找单身狗
- yii2 ListView 中的 样式修改
- Android Resource Types之Menu简介
- 数据库 大数据
- Android之drawable state各个属性详解
- 【C#】类与实例
- spring的依赖注入是什么意思
- APK安装详解