贪心——FatMouse' Trade(hdu1003)
题目链接:
http://acm.hdu.edu.cn/showproblem.php?pid=1003
题目描述:
每只猫把守一间房间,房间里有咖啡豆,老鼠可以拿猫粮去换,每个猫需要一定的猫粮,老鼠拿的猫粮的和猫需要的成一个比例,老鼠就能拿到这个比例的咖啡豆。问题是要我们求最多老鼠能拿到的咖啡豆。
题目分析:虽然比较绕,但也是一个比较明显的贪心问题 只要老鼠每次先去换单位猫粮内最多的咖啡豆,最终获得的就是最大的咖啡豆。
第一、咖啡豆/猫粮 为比较值,从大到小进行一次排列。
第二、每次去换 咖啡豆/猫粮 最大的咖啡豆。
#include<stdio.h>
int main()
{int n,i,j,d;double m,sum,t,a[20000],b[20000];while(scanf("%lf%d",&m,&n)!=EOF){if(n==-1&&m==-1)break; for(i=0;i<n;i++)scanf("%lf%lf",&a[i],&b[i]);sum=0;for(i=0;i<n-1;i++){if(m==0)break;d=i;for(j=i+1;j<n;j++)if((a[d]*b[j])<(a[j]*b[d]))d=j;t=a[i];a[i]=a[d];a[d]=t;t=b[i];b[i]=b[d];b[d]=t;if(b[i]<=m){sum+=a[i];m-=b[i];}else{sum+=m*1.0/b[i]*a[i];m=0;}}printf("%.3lf\n",sum);}return 0;
}
贪心——FatMouse' Trade(hdu1003)相关推荐
- HDU 1009 FatMouse' Trade(简单贪心 物品可分割的背包问题)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1009 FatMouse' Trade Time Limit: 2000/1000 MS (Java/O ...
- Java编写胖老鼠的交易,猫鼠交易(贪心) HDU 1009 FatMouse' Trade
猫鼠交易(贪心) HDU 1009 FatMouse' Trade FatMouse prepared M pounds of cat food, ready to trade with the ca ...
- HDU.1009 FatMouse' Trade
文章目录 一.题目解读 1.原题 2.分类 3.题意 4.输入输出格式 5.数据范围 二.题解参考 1.总体思路 2.思路① (1).分析 (2).一些数据 (3).AC代码 三.评价与后话 1.评价 ...
- 杭电OJ——ACM 1009.FatMouse‘ Trade
FatMouse'Trade 杭电OJ--ACM 1009.FatMouse' Trade链接入口 问题描述 肥老鼠换东西,m磅猫食,n间房子,每个房间有J[i]磅JavaBean,对应 ...
- 【1009】FatMouse‘ Trade
[1009]FatMouse' Trade 题目地址 贪心 FatMouse准备了M磅猫粮,准备和守卫仓库的猫咪交易,仓库里有他最喜欢的食物JavaBean. 仓库有N个房间.第i个房间里有J[i]磅 ...
- 【HDU - 1009 】FatMouse' Trade (贪心)
题干: FatMouse prepared M pounds of cat food, ready to trade with the cats guarding the warehouse cont ...
- [贪心算法] 例6.1 FatMouse' Trade
六 贪心算法 此类算法, 说是算法, 不如说是一种思想, 即每次选择当前最好的, 而不从整体上把握的思想. 题目描述: FatMouse prepared M pounds of cat food ...
- FatMouse‘ Trade(贪心算法)
原题链接 Problem Description FatMouse prepared M pounds of cat food, ready to trade with the cats guardi ...
- FatMouse'trade
贪心算法小应用~ 代码: #include <iostream> #include<algorithm> using namespace std;struct trade{do ...
最新文章
- python1000个常用代码-介绍Python中几个常用的类方法
- pytorch笔记:09)Attention机制
- SqlDataAdapter和SqlCommandBuilder添加数据
- Netbeans学习总结
- js层级选择框样式_【JavaWeb】85:jQuery的各种选择器
- Android数据的存储方式简介
- Qt工作笔记-QByteArray与自定义结构体之间的转化(可用于网络传输,以及数据回调)
- Stack Overflow监控系统内部架构初探
- ubuntu中的Linux安装程序的方法
- scan——Theano中循环的实现
- python 绘制多个子图
- 虚拟机中XP系统激活
- c4d阿诺德渲染器支持a卡吗_请问C4D的OC渲染器支持的显卡是越好越快吗?
- 驱动人生官网服务器维护,驱动人生在线检测服务 驱动检测更新更加方便
- 励志c语言编码的开始,基础打开VS操作指南
- 美团笔试题及解析(时间:2022年9月3号)
- 软件测试-兼容性测试
- cvte软件测试笔试题,CVTE前端笔试20190302
- java8 collections_初识Java8新特性Lambda(二) 之collections
- Matlab实现经典功率谱分析和估计
热门文章
- 图形驱动程序和显卡驱动什么区别_科普:游戏显卡和专业图形显卡存在的区别...
- Github简单使用
- python os库使用
- python读取yaml文件的内容_Python读取YAML文件过程详解
- image.resize()==>返回此图像的大小调整后的副本
- Python os.walk() 方法--输出在目录中的文件名
- 深度残差收缩网络:(三)网络结构
- php静态方法怎么调用非静态属性,关于静态方法不能调用类中的非静态属性的理解...
- python实现tsinghua-tencent 100000数据集的json文件转为xml文件
- top-1和top-5正确率与错误率以及目标检测评价指标