1020. 月饼
来源:互联网 发布:windows内部数据库 编辑:程序博客网 时间:2024/04/27 15:45
1020. 月饼 (25)
时间限制
100 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue
月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。
注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有3种月饼,其库存量分别为18、15、10万吨,总售价分别为75、72、45亿元。如果市场的最大需求量只有20万吨,那么我们最大收益策略应该是卖出全部15万吨第2种月饼、以及5万吨第3种月饼,获得 72 + 45/2 = 94.5(亿元)。
输入格式:
每个输入包含1个测试用例。每个测试用例先给出一个不超过1000的正整数N表示月饼的种类数、以及不超过500(以万吨为单位)的正整数D表示市场最大需求量。随后一行给出N个正数表示每种月饼的库存量(以万吨为单位);最后一行给出N个正数表示每种月饼的总售价(以亿元为单位)。数字间以空格分隔。
输出格式:
对每组测试用例,在一行中输出最大收益,以亿元为单位并精确到小数点后2位。
输入样例:3 2018 15 1075 72 45输出样例:
94.50
#include <stdio.h>int main(){ int N, i, j; double count = 0, D; double arr1[1000] = {0}, arr2[1000], arr3[1000]; scanf("%d%lf", &N, &D); for (i = 0; i < N; i++) { scanf("%lf", &arr1[i]); } for (i = 0; i < N; i++) { scanf("%lf", &arr2[i]); arr3[i] = arr2[i] / arr1[i]; } for (i = 0; i < N-1; i++) //将月饼的单位价格按高低次序排序 { for (j = 0; j < N - i-1; j++) { if (arr3[j + 1] > arr3[j]) { arr3[j + 1] = arr3[j] +arr3[j + 1]; arr3[j] = arr3[j + 1] - arr3[j]; arr3[j + 1] = arr3[j + 1] - arr3[j]; arr1[j + 1] = arr1[j] + arr1[j + 1]; arr1[j] = arr1[j + 1] - arr1[j]; arr1[j + 1] = arr1[j + 1] - arr1[j]; } } } for (i = 0; i < N; i++) // 主要思路是:现将最高价的月饼卖完,有多的再卖价格低的 { if ((D - arr1[i ]) <= 0) { count += D*arr3[i]; break; } else { count += arr1[i] * arr3[i]; D -= arr1[i]; } } printf("%.2lf", count);}
0 0
- 1020. 月饼
- 1020. 月饼
- 1020. 月饼
- 1020. 月饼
- 1020. 月饼
- 1020. 月饼
- 1020. 月饼
- 1020. 月饼
- 1020. 月饼
- PAT 1020. 月饼 (25)
- PAT 1020. 月饼<未完>
- 1020. 月饼 (25)
- 1020. 月饼 (25)
- 1020. 月饼 (25)
- 1020. 月饼 (25)
- 1020. 月饼 (25)
- 1020. 月饼 (25)
- 1020. 月饼 (25)
- vue加载自定义的js文件
- 对于函数库动态和静态的链接的理解
- 面试9之输入一个链表,输出该链表中倒数第k个结点。
- 活动选择 (sdut oj)
- jQ常规选择器总结
- 1020. 月饼
- 基于关键帧视觉惯性传感器非线性优化SLAM
- SHDP--Working With HBase (二)之HBase JDBC驱动Phoenix与SpringJDBCTemplate的集成
- popupwindow设置全屏边缘仍然有缝隙
- eclipse版本发布图
- J2EE系列之Struts2学习笔记(十一)--result配置
- 【Python】自动生成命令行工具
- androidstudio 静态代码检查以及如何自定义检测项
- EAS BOS 如何融合几行几列相同的数据