HDU 1009 FatMous'Trade(贪心)
来源:互联网 发布:淘宝开旗舰店费用 编辑:程序博客网 时间:2024/06/04 19:22
题目链接:Click here
题意:FatMouse准备了m磅的食物,以便用来交换它喜欢的食物,JavaBean。
现在有N个房间,第i个房间有J[i]磅的JavaBean,其交换的筹码是F[i]磅的食物。
当然,FatMouse还是有很大的选择权的,对任意一个房间,它可以只交换一部分的食物。
现要求FatMouse以怎样的策略才能获得最多的JavaBean。
思路:将javaBean/catfood的比值从大到小排列,比值大的也就是性价比高, 换的食物多。
#include<cstdio>#include<cstdlib>#include<cstring>#include<algorithm>using namespace std;struct node{ double f, j, k;}info[1005];int cmp(node x, node y){ return x.k > y.k;}//按照k的大小进行排序int main(){ //freopen("testin.txt", "r", stdin); int m, n; double ans; while(scanf("%d%d", &m, &n) != EOF) { if(m == -1 && n == -1)break; for(int i = 0; i < n; i++) { scanf("%lf%lf", &info[i].j, &info[i].f); info[i].k = info[i].j / info[i].f; } sort(info, info+n, cmp); ans = 0; for(int i = 0; i < n; i++) { if(m > info[i].f) { ans += info[i].j; m -= info[i].f; } else { ans += info[i].k * m;//如果m小于这个房间所需要的f值,那么就按照剩下的m换取所能得到的j break; } } printf("%.3lf\n", ans); } return 0;}
0 0
- HDU 1009 FatMous'Trade(贪心)
- hdu 1009 FatMouse' Trade(贪心)
- HDU 1009 FatMouse' Trade(经典贪心)
- HDU 1009:FatMouse' Trade(简单贪心)
- hdu 1009 FatMouse' Trade (水题,贪心)
- HDU 1009 FatMouse' Trade(贪心)
- hdu 1009 FatMouse' Trade(贪心)
- 【HDU-oj]-1009-FatMouse' Trade(贪心)
- HDU 1009 FatMouse' Trade (贪心)
- HDU(1009)FatMouse' Trade(贪心)
- HDU 1009 FatMouse' Trade(贪心)
- hdu 1009 FatMouse' Trade(贪心)
- hdu 1009 FatMouse' Trade(贪心)
- hdu 1009 FatMouse' Trade (贪心)
- HDU 1009 FatMouse' Trade【贪心】
- hdu 1009 FatMouse' Trade(贪心)
- hdu 1009 FatMouse' Trade(贪心)
- hdu 1009 FatMouse' Trade(贪心)
- 使用AFNetworking第三方下载类
- hdu-2112-HDU Today(dijkstra + map)
- mysql user表root 用户修改权限后出现无法访问数据库的解决方法
- Linux--基础
- ****************本文是Lua编写的游戏接入多盟SDK*******************
- HDU 1009 FatMous'Trade(贪心)
- POJ 2975 Nim(nim博弈)
- ORACLE 创建和管理表
- 梯度下降(Gradient Descent)
- 拓扑排序模板
- 深入浅出ShellExecute
- 黑马程序员_面向对象(3)_(异常)
- SwipeRefreshLayout实现下拉刷新、上拉加载更多功能
- c/C++程序占用的内存部分