L2-003 月饼 (25 分)

              L2-003 月饼 (25 分)

月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。

注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我们最大收益策略应该是卖出全部 15 万吨第 2 种月饼、以及 5 万吨第 3 种月饼,获得 72 + 45/2 = 94.5(亿元)。

输入格式:
每个输入包含一个测试用例。每个测试用例先给出一个不超过 1000 的正整数 N 表示月饼的种类数、以及不超过 500(以万吨为单位)的正整数 D 表示市场最大需求量。随后一行给出 N 个正数表示每种月饼的库存量(以万吨为单位);最后一行给出 N 个正数表示每种月饼的总售价(以亿元为单位)。数字间以空格分隔。

输出格式:
对每组测试用例,在一行中输出最大收益,以亿元为单位并精确到小数点后 2 位。
输入样例:

3 20
18 15 10
75 72 45

输出样例:

94.50

典型的简单贪心题,没啥好说的,不会的人看下贪心算法就会了。

#include<iostream>
#include<iomanip>
#include<algorithm>
using namespace std;
struct node{double priece,num;double dj;
}ch[1001];bool cmp(node x,node y){return x.dj>y.dj;
}
int main()
{double need,maxn;int n;cin>>n>>need;for (int i=0;i<n;i++){cin>>ch[i].num;}for (int i=0;i<n;i++){cin>>ch[i].priece;ch[i].dj=ch[i].priece/ch[i].num;}sort(ch,ch+n,cmp);for (int i=0;i<n;i++){if (need==0) break;if (need<=ch[i].num){maxn+=need*ch[i].dj;need=0;}else{maxn+=ch[i].priece;need-=ch[i].num;}}cout<<fixed<<setprecision(2)<<maxn;return 0;
}

拜拜!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/428976.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Oracle删除pk+cascade,Oracle删除表

在本教程中&#xff0c;将学习如何使用Oracle DROP TABLE语句删除现有的表。Oracle DROP TABLE语句简介要将表移动到回收站或将其从数据库中完全删除&#xff0c;请使用DROP TABLE语句&#xff1a;DROP TABLE schema_name.table_name [CASCADE CONSTRAINTS | PURGE];在这个语句…

L2-005 集合相似度 (25 分)

L2-005 集合相似度 (25 分) 给定两个整数集合&#xff0c;它们的相似度定义为&#xff1a;N ​c ​​ /N ​t ​​ 100%。其中N ​c ​​ 是两个集合都有的不相等整数的个数&#xff0c;N ​t ​​ 是两个集合一共有的不相等整数的个数。你的任务就是计算任意一对给定集合的相似…

oracle有sysdata,Oracle基础

1、默认事例&#xff1a;用户名&#xff1a;scott密码&#xff1a;tiger 主机字符串&#xff1a;本机可以为空2、启动方法&#xff1a;运行&#xff1a;sqlplusscott/tigerlhd3、SQLPLUS基本命令&#xff1a;Desc&#xff1a;显示表、视图结构 desc 表名&#xff0c;视图List&…

selenium+java初级学习笔记之单个元素定位

元素定位可以大概分为八重一般情况下常用的就是by.id、by.name、by.classname&#xff0c;如果需要定位的元素中没有这几个可以选择其他方式的定位&#xff1a;By.id(id) //&#xff08;有时元素中id是会变化的&#xff0c;可以刷新页面&#xff0c;如果发现每次的id都不一样则…

L2-004 这是二叉搜索树吗? (25 分)

L2-004 这是二叉搜索树吗&#xff1f; (25 分) 一棵二叉搜索树可被递归地定义为具有下列性质的二叉树&#xff1a;对于任一结点&#xff0c; 其左子树中所有结点的键值小于该结点的键值&#xff1b; 其右子树中所有结点的键值大于等于该结点的键值&#xff1b; 其左右子树都是…

Linux高频命令汇总,Linux高频命令

8种机械键盘轴体对比本人程序员&#xff0c;要买一个写代码的键盘&#xff0c;请问红轴和茶轴怎么选&#xff1f;findfind path [options] params作用&#xff1a;在指定目录下查找文件1234find / -name "target.java" #在根目录下查找target.java文件find -name &qu…

深入理解javascript函数参数

arguments javascript对参数要求很随意&#xff0c;她才不管你传进来的参数是什么数据类型&#xff0c;甚至可以不传参数。实际上&#xff0c;javascript函数调用甚至不检查传入形参的个数。 1 function add(x){ 2 return x 1; 3 } 4 console.log(add(1))…

linux系统时间函数,Linux时间时区详解与常用时间函数

时间与时区整个地球分为二十四时区&#xff0c;每个时区都有自己的本地时间。UTC时间 与 GMT时间我们可以认为格林威治时间就是时间协调时间(GMT UTC)&#xff0c;格林威治时间和UTC时间都用秒数来计算的。UTC时间与本地时间UTC 时区差 本地时间时区差东为正&#xff0c;西为…

7-5 汉诺塔的非递归实现 (25 分)

7-5 汉诺塔的非递归实现 (25 分) 借助堆栈以非递归&#xff08;循环&#xff09;方式求解汉诺塔的问题&#xff08;n, a, b, c&#xff09;&#xff0c;即将N个盘子从起始柱&#xff08;标记为“a”&#xff09;通过借助柱&#xff08;标记为“b”&#xff09;移动到目标柱&…

js 异步问题

如果发现前端的异步请求&#xff0c;network有发送成功而且有返回值&#xff0c;但是没有进前端的callback成功回掉函数内&#xff0c;这时候就需要检查是不是配置文件做了语法限制&#xff0c;只能返回某些数据格式&#xff0c;不能返回某些数据格式。 一般限制最多的就是后端…

海康、大华IPC的rtsp格式

海康&#xff1a;  rtsp://[username]:[password][ip]:[port]/[codec]/[channel]/[subtype]/av_stream说明&#xff1a;username: 用户名。例如admin。password: 密码。例如12345。ip: 为设备IP。例如 192.0.0.64。port: 端口号默认为554&#xff0c;若为默认可不填写。codec…

linux awr 日志,Linux平台生成awr报告

1&#xff0e;使用Oracle用户登录应用服务器所使用的数据库所在的服务器# su –oracle2&#xff0e;输入env命令&#xff0c;查询出ORACLE_HOME 目录3&#xff0e;然后进入$ORACLE_HOME/rdbms/admin目录&#xff0c;查询awr语句(此步骤可以忽略)此处可以直接省略2&#xff0c;3…

利用一维数组输出杨辉三角

直接上代码&#xff1a; package hello;import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in new Scanner(System.in);int n in.nextInt();int table [] new int [n1];table[0] 1;for (int i1;i<n;i) {for (int j0;j<…

缓存(Cache)管理 ---- 系列文章

利用Cache防止同一帐号重复登录.net中Cache管理操作系统缓存全解析 (下)系统缓存全解析 (中)系统缓存全解析 (上)出处&#xff1a;http://www.cnblogs.com/luckdv/tag/%E7%BC%93%E5%AD%98/转载于:https://www.cnblogs.com/mq0036/p/7291955.html

找到一个二位数组的鞍点

上代码&#xff1a; package hello;import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in new Scanner(System.in);int mat[][] new int[3][3];for (int i0;i<3;i) {for (int j0;j<3;j) {mat[i][j] in.nextInt();}}bool…

linux 文件按时间 函数,[Linux文件属性]使用utime函数操作文件的时间参数

//这是一个使用utime函数对文件的时间参数进行修改的实例//文件首先使用stat函数获得文件当前的时间参数&#xff0c;然后使用//Open函数对文件进行修改&#xff0c;再用utime函数对文件的时间信息//进行修改.文件名由argv参数给出#include #include #include int main(int arg…

HDU 1159 Common Subsequence 动态规划

2017-08-06 15:41:04 writer&#xff1a;pprp 刚开始学dp&#xff0c;集训的讲的很难&#xff0c;但是还是得自己看&#xff0c;从简单到难&#xff0c;慢慢来&#xff08;如果哪里有错误欢迎各位大佬指正&#xff09; 题意如下&#xff1a; 给两个字符串&#xff0c;找到其中大…

用类,求三个数的最大数

上代码&#xff1a; package hello;import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in new Scanner(System.in);int a,b,c;a in.nextInt();b in.nextInt();c in.nextInt();int num max(a,b,c);System.out.println("…

【Xmail】使用Xmail搭建局域网邮件服务器

下载地址&#xff1a; http://www.xmailserver.org/xmail-1.27.win32bin.zip&#xff0c;当前最新版本 1.27。 解压文件&#xff1a;xmail-1.27.win32bin.zip 1、把其中的 MailRoot 目录拷贝到 C:\&#xff1b; 2、把 C:\xmail-1.27.win32bin\xmail-1.27 目录下的所有文件&am…

linux ntfs硬盘自动挂,linux下查看所有硬盘分区+挂接NTFS磁盘/硬盘+自动挂接硬盘方法...

基本上所有Linux 发行版在启动系统时都是根据/etc/fstab文件的配置来挂载分区的。在/etc/fstab中&#xff0c;根据不同格式的分区&#xff0c;其挂载参数也不同&#xff0c;参数不同其结果不同&#xff0c;包括用户的读写权限&#xff0c;下面一一说来。1、对于fat32格式分区&a…