博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
1020. 月饼 (25)
阅读量:4483 次
发布时间:2019-06-08

本文共 934 字,大约阅读时间需要 3 分钟。

#include
#include
using namespace std;struct node{ double num; double price; double weight;};int cmp(const void *a, const void *b){ node aa = *(node*)a; node bb = *(node*)b; if (aa.price / aa.num > bb.price / bb.num) return -1; else if (aa.price / aa.num < bb.price / bb.num) return 1; else return 0;}int main(){ int a, b, cnt = 0; double temp = 0; cin >> a >> b; node mooncake[a]; for (int i = 0; i < a; i++)cin >> mooncake[i].num; for (int i = 0; i < a; i++)cin >> mooncake[i].price; for (int i = 0; i < a; i++)mooncake[i].weight = 1.0 * mooncake[i].price / mooncake[i].num; qsort(mooncake, a, sizeof(mooncake[0]), cmp); while (b != 0 && cnt != a){ if (b >= mooncake[cnt].num) { temp += mooncake[cnt].price; b -= mooncake[cnt].num; cnt++; } else{ temp += b * mooncake[cnt++].weight; b = 0; } } printf("%.2f", temp); return 0;}

  

转载于:https://www.cnblogs.com/minimalism/p/6337550.html

你可能感兴趣的文章
Static关键字
查看>>
项目测试Wikis(1)门户_用户接口
查看>>
MUI 样式按钮的禁用
查看>>
选择排序线性顺序版
查看>>
为什么要把系统拆分成分布式的,为啥要用Dubbo?
查看>>
servlet乱码问题
查看>>
从C到C++ (2)
查看>>
欢迎来到我的博客!
查看>>
LeedCde 题解目录
查看>>
二叉树的二叉线索存储
查看>>
linux入门实验手册5 用户和权限管理
查看>>
Extjs实现Grid表格显示【一】
查看>>
LeetCode | Minimum Depth of Binary Tree
查看>>
负载均衡的原理
查看>>
List<实体> 转字符串常用写法
查看>>
使用js实现网页验证码
查看>>
写代码:购物车程序
查看>>
java 单例模式 几个实现方法
查看>>
JavaBean简单示例
查看>>
oracle select in超过1000条报错解决方法
查看>>