题目描述
某天 KID 利用飞行器飞到了一个金银岛上,上面有许多珍贵的金属,

KID虽然更喜欢各种宝石的艺术品,可是也不拒绝这样珍贵的金属,但是他只带着一个口袋,口袋至多只能装重量为 w 的物品。

岛上金属有 s 个种类, 每种金属重量不同,分别为 n1, n2, …, ns,同时每个种类的金属总的价值也不同,分别为 v1, v2, …, vs

KID想一次带走价值尽可能多的金属,问他最多能带走价值多少的金属。

注意到金属是可以被任意分割的,并且金属的价值和其重量成正比。

输入格式
第 1 行是测试数据的组数 k,后面跟着 k 组输入,
每组测试数据占 3 行,

  • 第 1 行是一个正整数 w,表示口袋承重上限。
  • 第 2 行是一个正整数 s,表示金属种类。
  • 第 3 行有 2s 个正整数,分别为 n1, v1, n2, v2, …, ns, vs 分别为第一种,第二种,…,第 s 种金属的总重量和总价值

输出格式
k 行,每行输出对应一个输入,输出应精确到小数点后 2 位。

输入样例
2
50
4
10 100 50 30 7 34 87 100
10000
5
1 43 43 323 35 45 43 54 87 43

输出样例
171.93
508.00

数据范围
1 ≤ s ≤ 100
1 ≤ w ≤ 10000
1 ≤ ni ≤ 10000, 1 ≤ vi ≤ 10000


题解
贪心:

#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;const int N = 110;int T;
int n, m;struct thing
{int v, w;double x;
}s[N];bool cmp(thing a, thing b)
{return a.x > b.x;
}int main()
{cin >> T;while(T --){cin >> m >> n;for (int i = 1; i <= n; i ++){cin >> s[i].v >> s[i].w;s[i].x = 1.0 * s[i].w / s[i].v;}sort(s + 1, s + 1 + n, cmp);double ans = 0;for (int i = 1; i <= n; i ++)if(m >= s[i].v){m -= s[i].v;ans += s[i].w;}else{ans += s[i].x * m;break;}printf("%.2f\n", ans);}return 0;
}

金银岛(信息学奥赛一本通 - T1225)相关推荐

  1. 金银岛(信息学奥赛一本通-T1225)

    [题目描述] 某天KID利用飞行器飞到了一个金银岛上,上面有许多珍贵的金属,KID虽然更喜欢各种宝石的艺术品,可是也不拒绝这样珍贵的金属.但是他只带着一个口袋,口袋至多只能装重量为w的物品.岛上金属有 ...

  2. 信息学奥赛一本通 (C++)上机练习

    信息学奥赛一本通(C++)上机练习 此书为娃儿的第一本刷题书.娃儿现在四年级 ,希望他能坚持下来.特开贴加油 luogu: disangan223 第一部分 C++语言 第一章 C++语言入门 T10 ...

  3. 信息学奥赛一本通(基础算法与数据结构-题解汇总目录)

    信息学奥赛一本通(C++版)在线评测系统 基础(二)基础算法   更新中...... 第一章高精度计算 1307[例1.3]高精度乘法 1308[例1.5]高精除 1309[例1.6]回文数(Noip ...

  4. 信息学奥赛一本通_长乐一中老师演绎“奥赛传奇”

    董永建(右一)在课堂上. 台海网5月14日讯 据福州晚报报道,长乐一中有一位"传奇"老师--15年来,他辅导的学生在全国高中生信息学奥赛中获金牌3人次.银牌3人次.铜牌5人次:在全 ...

  5. 信息学奥赛一本通 提高篇 第5章 矩阵乘法

    例1 矩阵AXB 信息学奥赛一本通(C++版)在线评测系统 [矩阵乘法]矩阵A×B_Uletay-CSDN博客 矩阵乘法--矩阵A×B_vina的博客-CSDN博客 一本通1641[例 1]矩阵 A× ...

  6. 《信息学奥赛一本通提高篇》第6章 组合数学

    例1 计算系数(NOIP2011提高) 信息学奥赛一本通(C++版)在线评测系统 NOIP2011计算系数_nanhan27的博客-CSDN博客 「NOIP2011」 计算系数 - 组合数_TbYan ...

  7. 《信息学奥赛一本通 提高篇》

    提高篇 第一部分 基础算法 第1章 贪心算法 提高篇 第一部分 基础算法 第1章 贪心算法_青少年趣味编程-CSDN博客 提高篇 第一部分 基础算法 第1章 贪心算法 提高篇 第一部分 基础算法 第1 ...

  8. 信息学奥赛一本通 提高篇 第一部分 基础算法 第2章 二分与三分

    信息学奥赛一本通 提高篇 提高版 第一部分 基础算法 第2章 二分与三分 信息学奥赛一本通 提高篇 提高版 第一部分 基础算法 第2章 二分与三分_mrcrack的博客-CSDN博客_信息学奥赛一本通 ...

  9. 信息学奥赛一本通 提高篇 第六部分 数学基础 相关的真题

    第1章   快速幂 1875:[13NOIP提高组]转圈游戏 信息学奥赛一本通(C++版)在线评测系统 第2 章  素数 第 3 章  约数 第 4 章  同余问题 第 5 章  矩阵乘法 第 6 章 ...

最新文章

  1. 近期window7x64 打补丁之后IE11x64无法启动
  2. ddos压力测试_蓝盟IT外包,浅析DDoS攻击防御和DDoS攻击原理
  3. linux内核percpu变量声明,Linux kernel percpu变量解析
  4. php 日志按天截取,Laravel 日志管理:按日期切割日志
  5. android圆角柱状图,MPAndroidChart 圆角柱状图-Go语言中文社区
  6. 【转】 SQL 2005 try catch
  7. springboot 项目里使用spring.xml文件
  8. VScode 配置 Java 环境
  9. Spring Boot如何设置开发模式
  10. vue学习笔记-绑定属性 绑定class及style(2)
  11. ssl 2133 腾讯大战360#spfa#
  12. CHM格式 打开后不显示内容的解决办法
  13. Dubbo中文官方文档
  14. Echarts南丁格尔图.
  15. python车牌号4位数_4位数吉祥车牌号码大全 这是常见的数字组合
  16. 利用游程编码实现二值图像压缩
  17. 父元素设置min-height,子元素height 100%失效问题
  18. (Java毕业设计)旧车交易撮合管理平台(java+mysql+b/s架构)附源码
  19. ymodem协议上位机_《储能变流器与电池管理系统通信协议第1部分:CAN通信协议》等三项团体标准工作会议在厦门召开...
  20. Foxit_PDF_SDK.NET.7.X优化插件XFA的改进

热门文章

  1. PhotoShop画布自动适应图像的尺寸大小?
  2. Excel.Application使用手册(API)
  3. Python框架Flask系列教程(1)——基础-黄勇-专题视频课程
  4. 为什么 200M 宽带,打王者荣耀还是会有 460 的延迟?
  5. Rest——分布式超媒体系统的架构风格
  6. USACO-Arithmetic Progressions
  7. html文档主体的根标签,HTML详细介绍(基础标签篇)
  8. 玩转代码|Google Map api国内正常使用该如何配置
  9. 高斯-约当消元法(随机程序,UVA 10828)
  10. 【MYSQL】MYSQL 主要函数