Poj百练 4110:圣诞老人的礼物-Santa Clau’s Gifts (分类:贪心)
发布日期:2021-06-29 15:52:18 浏览次数:3 分类:技术文章

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

#include 
#include
#include
using namespace std;const int maxn = 100+5;int n, w;struct Box{ int v, w; double den;};bool operator < (const Box &a, const Box &b) //重载比较{ return a.den>b.den;}int main(){ scanf("%d%d",&n,&w); Box boxes[maxn]; for(int i = 1; i <= n; i++){ scanf("%d%d",&boxes[i].v, &boxes[i].w); //直接计算出每个礼物的性价比 boxes[i].den = 1.0*boxes[i].v/boxes[i].w; } //按升序进行排序 sort(boxes+1, boxes+n+1); //按性价比从高到低依次向下取 double totw = 0, totv = 0; for(int i = 1; i <= n; i++){ if(w - totw >= boxes[i].w){ //可以放下 totw += boxes[i].w; totv += boxes[i].v; } else{ //放不下了 totv += boxes[i].den*(w-totw); totw += w; break; } } printf("%.1lf",totv); return 0;}

 

转载地址:https://suprit.blog.csdn.net/article/details/81415969 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Redis主从复制(Replication)机制介绍,适合新手
下一篇:redis哨兵模式(sentinel)介绍和简单使用方法

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年04月10日 03时37分29秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章