商人的诀窍

Description

E_star和von是中国赫赫有名的两位商人,俗话说的好无商不奸,最近E_star需要进一批苹果。可是他需要的苹果只有von才有,von的苹果都存在他的传说中很牛叉的仓库里,每个仓库都存了不同种类的苹果,而且每个仓库里的苹果的价钱不同。如果E_star想要买仓库i里的所有重量为f[i]的苹果他必须付m[i]的金钱。E_star开着他的传说中的毛驴车去拉苹果,而且他只带了N些金钱。E_star作为传说中的奸商希望用它所带的N金钱得到重量最多的苹果。你作为他最好的朋友,所以他向你求出帮助。希望你能帮忙计算出他能买到最多的苹果(这里只重量最大)。并输出最大重量。
提示:这里仅考虑仓库里苹果的重量,不考虑个数。

Input

第一行包括两个非负整数N,M(分别代表E_star带的金币数,von盛苹果的仓库数量,)
接下来有有M行,每行包括两个数非负整数f[i]和m[i]分别表示第i仓库里存有重量为f[i]的苹果,如果将所有苹果买下要花费m[i]的金钱,E_star不必非要将每个仓库的苹果全部买下。
当M,N同时为-1是结束。

Output

E_star用N的金币所能买到的最大重量的苹果的重量。结果保留三位小数。

Sample Input

5 3
7 2
4 3
5 2
20 3
25 18
24 15
15 10
-1 -1

Sample Output

13.333
31.500

Hint

#include<iostream>
#include<iomanip>
using namespace std;
struct apple{int w, m;double bi;
}a[101], b;
int main(){int N, M, i;while(cin>>N>>M && (M != -1 && N != -1) ){for(i=0; i<M; i++){cin>>a[i].w>>a[i].m;a[i].bi = a[i].w*1.0/a[i].m;}for(i=0; i<M; i++)for(int j=M-1; j>i; j--)if(a[j].bi >a[j-1].bi){b = a[j];a[j] = a[j-1];a[j-1] = b;}double bought=0;for(i=0; i<M; i++){if(N-a[i].m >= 0){bought += a[i].w;N -= a[i].m;}else{bought += a[i].bi * N;break;}}cout<<fixed<<setprecision(3)<<bought<<endl;}
return 0;
}

转载于:https://www.cnblogs.com/Genesis2018/p/8304833.html

商人的诀窍 结构体相关推荐

  1. 商人的诀窍-(贪心出问题最多的-快排函数错)

    Problem Description E_star和von是中国赫赫有名的两位商人,俗话说的好无商不奸,最近E_star需要进一批苹果.可是他需要的苹果只有von才有,von的苹果都存在他的传说中很 ...

  2. 【RTOS训练营】课程学习方法和C语言知识(指针、结构体、函数指针、链表)和学员问题

    一.课程学习方法 因为有些学员是刚进群,所以这里再把学习方法讲一下. 1. 预习 我们会在每一节晚课之后会通知要预习的章节,学员需要按如下操作观看相关视频. 1.1 打开百问网官网 ​1.2 点击首页 ...

  3. Gin 框架学习笔记(02)— 参数自动绑定到结构体

    参数绑定模型可以将请求体自动绑定到结构体中,目前支持绑定的请求类型有 JSON .XML .YAML 和标准表单 form数据 foo=bar&boo=baz 等.换句话说,只要定义好结构体, ...

  4. Go 知识点(04)— 结构体字段转 json格式 tag 标签的作用

    我们知道在 Go 语言中无论是变量.常量还是函数,对于首字母大小写有不同的处理. 首字母大写,标志着该字段或者函数是能导出的,也就是可以被其它包所能访问的: 首字母小写,标志着该字段是私有的,只能在本 ...

  5. 【C#】枚举_结构体_数组

    最近看C#视频,关于这部分,先看了一遍,又照着敲了一遍,自己敲的过程发现了一些有意思的东西. 枚举:定义一个枚举类型的变量,这个变量有很多相同类型的值.比如性别Gender这个变量可以有男和女这两个值 ...

  6. C++ 结构体struct 的使用

    结构体是什么 结构体是一种有开发者定义的数据类型,以容纳许多不同的数据值 结构体的注意事项: 声明结构体的方式和声明类的方式大致相同,其区别如下: 使用关键字 struct 而不是关键字 class. ...

  7. C语言结构体篇 结构体

    在描述一个物体的属性的时候,单一的变量类型是无法完全描述完全的.所以有了灵活的结构体变量. 结构体变量从意义上来讲是不同数据类型的组合,从内存上来讲是在一个空间内进行不同的大小划分. 1.1 结构体类 ...

  8. 33. 使用fread()/fwrite()往文件中写入结构体,从文件中读出结构体

    1 //读写结构体 2 #include <stdio.h> 3 typedef struct student 4 { 5 int num; 6 char name[30]; 7 char ...

  9. Linux 准确查找结构体定义位置

    例如:查找文件操作结构体 struct file_operations, 使用转移符 "\" $ grep struct\ file_operations\ { kernel/in ...

最新文章

  1. “吴恩达deeplearningai”微信公众号上线,将发布《机器学习训练秘籍》
  2. struts 数据库连接
  3. Hadoop HDFS概念学习系列之熟练掌握HDFS的Shell访问(十五)
  4. 关于你不知道的特征归一化/标准化
  5. 基于深度学习的场景分割算法研究综述
  6. 【SpringSecurity系列02】SpringSecurity 表单认证逻辑源码解读
  7. java基础类的继承_JAVA核心技术I---JAVA基础知识(类的继承)
  8. 面试被问:Selenium元素定位不到问题,如何回答?
  9. 变量、属性、函数、方法总结
  10. 问题十九:怎么模拟ray tracing中漫射材料球体的颜色(diffuse materials)
  11. 微信公众账号开发入门准备
  12. ASP.NET页面间的传值方法(2)
  13. 微信APP支付申请配置过程详解
  14. vscode下报错:No such file or directory fatal error:no input files的一种比较坑爹的可能
  15. 第三代移动通信系统抗干扰关键技术(转)
  16. 微信小程序播放器实战开发教程
  17. python创意网络爬虫_基于Python专用型网络爬虫的设计及实现
  18. 文件下载-解决IOS自带浏览器下载乱码的问题
  19. Windows下WordPress安装教程(全)
  20. DHTML Cascading style sheet 下载 CSS手册

热门文章

  1. 计算机系统基础:bomb炸弹实验
  2. centos os u盘启动盘_制作U盘启动盘,CentOS系统安装
  3. 任正非--迎接挑战,苦练内功,迎接春天的到来
  4. 浅谈幼儿园计算机论文,浅谈幼儿教育的论文
  5. 解读乐鑫 AT 指令解析器,解锁你不知道的用法
  6. Qt 之图形(QPainterPath)
  7. 巧用selenium爬取巨潮资讯公司数据
  8. 20155314 2016-2017-2 《Java程序设计》第8周学习总结
  9. opensource项目_Opensource.com 2014年年度阅读清单
  10. 【python-sklearn】中文文本处理LDA主题模型分析