当前位置:网站首页>FatMouse' Trade(杭电1009)
FatMouse' Trade(杭电1009)
2022-07-07 20:58:00 【全栈程序员站长】
大家好,又见面了,我是全栈君。
FatMouse’ Trade
Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)
Total Submission(s) : 1 Accepted Submission(s) : 1
Font: Times New Roman | Verdana | Georgia
Font Size: ← →
Problem Description
FatMouse prepared M pounds of cat food, ready to trade with the cats guarding the warehouse containing his favorite food, JavaBean. The warehouse has N rooms. The i-th room contains J[i] pounds of JavaBeans and requires F[i] pounds of cat food. FatMouse does not have to trade for all the JavaBeans in the room, instead, he may get J[i]* a% pounds of JavaBeans if he pays F[i]* a% pounds of cat food. Here a is a real number. Now he is assigning this homework to you: tell him the maximum amount of JavaBeans he can obtain.
Input
The input consists of multiple test cases. Each test case begins with a line containing two non-negative integers M and N. Then N lines follow, each contains two non-negative integers J[i] and F[i] respectively. The last test case is followed by two -1’s. All integers are not greater than 1000.
Output
For each test case, print in a single line a real number accurate up to 3 decimal places, which is the maximum amount of JavaBeans that FatMouse can obtain.
Sample Input
5 3
7 2
4 3
5 2
20 3
25 18
24 15
15 10
-1 -1Sample Output
13.333
31.500//本题是简单贪心问题。意思是老鼠有m榜猫粮,通过给猫粮东西data[i].b能够兑换data[i].a,求最多能够兑换多少食物。//仅仅需将data[i].a/data[i].b的值从大到小排序就可以求解。 #include<stdio.h>struct st{ double a; double b; double c;}data[1000];int main(){ int i,j,m,n; struct st data[1000],t; while(scanf("%d %d",&m,&n)&&(m!=-1||n!=-1)) { double sum=0.000; for(i=0;i<n;i++) { scanf("%lf %lf",&data[i].a,&data[i].b); } for(i=0;i<n;i++) { for( j=i+1;j<n;j++) { if((data[i].a/data[i].b)<data[j].a/data[j].b) { t=data[i]; data[i]=data[j]; data[j]=t;} } } for(i=0;i<n;i++) { if(m-data[i].b>=0.001) { sum+=data[i].a; m-=data[i].b; } else { sum=sum+m*data[i].a/data[i].b; break; } } printf("%.3lf\n",sum); } return 0;}发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/116298.html原文链接:https://javaforall.cn
边栏推荐
- [concept of network principle]
- Update iteration summary of target detection based on deep learning (continuous update ing)
- 恶魔奶爸 A1 语音听力初挑战
- sqlHelper的增删改查
- 目标:不排斥 yaml 语法。争取快速上手
- MinGW MinGW-w64 TDM-GCC等工具链之间的差别与联系「建议收藏」
- 解决使用uni-app MediaError MediaError ErrorCode -5
- 论文解读(ValidUtil)《Rethinking the Setting of Semi-supervised Learning on Graphs》
- margin 等高布局
- awk处理JSON处理
猜你喜欢

How to meet the dual needs of security and confidentiality of medical devices?

Static analysis of software defects codesonar 5.2 release

I Basic concepts
Klocwork code static analysis tool
SQL注入报错注入函数图文详解

如何满足医疗设备对安全性和保密性的双重需求?

神兵利器——敏感文件发现工具

如何满足医疗设备对安全性和保密性的双重需求?

Tensorflow2. How to run under x 1 Code of X

Optimization cases of complex factor calculation: deep imbalance, buying and selling pressure index, volatility calculation
随机推荐
国家正规的股票交易app有哪些?使用安不安全
使用枚举实现英文转盲文
Micro service remote debug, nocalhost + rainbow micro service development second bullet
万字总结数据存储,三大知识点
写一下跳表
95年专注安全这一件事 沃尔沃未来聚焦智能驾驶与电气化领域安全
【矩阵乘】【NOI 2012】【cogs963】随机数生成器
npm uninstall和rm直接删除的区别
Phoenix JDBC
How to choose financial products? Novice doesn't know anything
Small guide for rapid formation of manipulator (11): standard nomenclature of coordinate system
Alibaba cloud award winning experience: how to mount NAS file system through ECS
Do you have to make money in the account to open an account? Is the fund safe?
The latest version of codesonar has improved functional security and supports Misra, c++ parsing and visualization
恶魔奶爸 C
如何挑选基金产品?2022年7月份适合买什么基金?
Jetty:配置连接器[通俗易懂]
Can Huatai Securities achieve Commission in case of any accident? Is it safe to open an account
sqlHelper的增删改查
How to meet the dual needs of security and confidentiality of medical devices?