当前位置: 首页 > news >正文

PAT A1070 Mooncake

1070 Mooncake

分数 25

作者 CHEN, Yue

单位 浙江大学

Mooncake is a Chinese bakery product traditionally eaten during the Mid-Autumn Festival. Many types of fillings and crusts can be found in traditional mooncakes according to the region's culture. Now given the inventory amounts and the prices of all kinds of the mooncakes, together with the maximum total demand of the market, you are supposed to tell the maximum profit that can be made.

Note: partial inventory storage can be taken. The sample shows the following situation: given three kinds of mooncakes with inventory amounts being 180, 150, and 100 thousand tons, and the prices being 7.5, 7.2, and 4.5 billion yuans. If the market demand can be at most 200 thousand tons, the best we can do is to sell 150 thousand tons of the second kind of mooncake, and 50 thousand tons of the third kind. Hence the total profit is 7.2 + 4.5/2 = 9.45 (billion yuans).

Input Specification:

Each input file contains one test case. For each case, the first line contains 2 positive integers N (≤1000), the number of different kinds of mooncakes, and D (≤500 thousand tons), the maximum total demand of the market. Then the second line gives the positive inventory amounts (in thousand tons), and the third line gives the positive prices (in billion yuans) of N kinds of mooncakes. All the numbers in a line are separated by a space.

Output Specification:

For each test case, print the maximum profit (in billion yuans) in one line, accurate up to 2 decimal places.

Sample Input:

3 200
180 150 100
7.5 7.2 4.5

Sample Output:

9.45

 将每种月饼的信息用一个结构体存储,包括储量,总价值,单价,然后以单价递减的顺序
 * 排序,当单价越高时,卖出去的月饼利润越高;

/*** 将每种月饼的信息用一个结构体存储,包括储量,总价值,单价,然后以单价递减的顺序* 排序,当单价越高时,卖出去的月饼利润越高;
*/#include <iostream>
#include <algorithm>using namespace std;struct Mooncake
{double sto, val, pri;bool operator < (const Mooncake & a) const{return pri > a.pri;}
};const int N = 1e4+10;
struct Mooncake moon[N];int main()
{int n, dem;cin >> n >> dem;for(int i=0; i<n; ++i)cin >> moon[i].sto;for(int i=0; i<n; ++i){cin >> moon[i].val;moon[i].pri = moon[i].val / moon[i].sto;}double pro = 0;sort(moon, moon + n);for(int i=0; i<n && dem; ++i){if(dem >= moon[i].sto){pro += moon[i].val;dem -= moon[i].sto;}else{pro += dem * moon[i].pri;dem = 0;}}printf("%.2f\n", pro);return 0;
}

相关文章:

PAT A1070 Mooncake

1070 Mooncake 分数 25 作者 CHEN, Yue 单位 浙江大学 Mooncake is a Chinese bakery product traditionally eaten during the Mid-Autumn Festival. Many types of fillings and crusts can be found in traditional mooncakes according to the regions culture. Now gi…...

MyBatis- plus

实战总结 1.批量插入性能 1.批量插入性能差的原因 使用saveBatch()方法时&#xff0c; MySQL JDBC驱动在默认情况下会无视executeBatch()语句&#xff0c;把我们期望批量执行的一组sql语句拆散&#xff0c;一条一条地发给MySQL数据库&#xff0c;批量插入实际上是单条插入&a…...

Java --- 期末复习卷

一、单选题 1&#xff0e;所有Java应用程序主类必须有一个名叫( )的方法。[ ] A&#xff0e;method B&#xff0e;main() C&#xff0e;java() D&#xff0e;hello 2&#xff0e;编写并保存了一个Java程序文件之后&#xff0c;( )它。[ …...

File类与IO流相关面试知识(一)

一.java.io.File类 作用&#xff1a;它的作用是用来表示某个文件或文件夹&#xff08;文件夹又称为目录&#xff09; 如何用File类的对象表示一个文件或目录的呢&#xff1f; API文档中描述&#xff1a;文件和目录路径名的抽象表示形式 解释&#xff1a;如果要表示一个文件…...

009 - STM32学习笔记 - 中断

009 - STM32学习笔记 - 中断 这节的内容&#xff0c;野火的官方视频我反复看了好几次&#xff0c;但是感觉火哥在这块讲解的特别绕&#xff0c;理解起来很吃力&#xff0c;后来在看了一下其他老师的视频&#xff0c;结合一些书本资料和官方手册&#xff0c;才搞清楚STM32中断该…...

分享几种js格式化金额的方法

一、使用 Intl.NumberFormat 构造函数 这是 JavaScript 中格式化金额的最常见方法。Intl.NumberFormat()构造函数接受两个参数&#xff1a;语言环境和选项。语言环境是为其格式化金额的语言和地区。选项是一组控制金额格式的属性。例如&#xff0c;可以使用样式属性来指定货币…...

圣墟传说H5手工端搭建架设教程

圣墟传说H5手工端搭建架设教程 大家好&#xff0c;我是艾西。今天给大家带来的游戏是由小说改编而来的大型玄幻MMORPG仙侠手游&#xff0c;也是比较老的游戏了虽然你可能没有怎么听过&#xff0c;但总会有一批喜欢的玩家热衷于它。 那么让我们直接进入正题开始操作&#xff1…...

编程(40)----------单例模式

在简单总结单例模式之前, 需要了解一下背景知识-----为何会有单例模式? 想象一个这样的场景, 打游戏的时候, 尝试很多次, 都未通关. 这种情况下是否会考虑查一下攻略? 一个好的攻略甚至可能连每一关的每一个场景由多少只怪物都说的清清楚楚. 再比如, 在以前上学的时候, 为了…...

Java开发 - 让你少走弯路的Redis主从实现单节点哨兵模式

前言 前一篇中&#xff0c;我们讲解了Redis主从的搭建方式&#xff0c;其实很简单呐有木有&#xff0c;都是配置&#xff0c;连句代码都没有&#xff0c;是不是感觉高估了Redis主从的搭建方式&#xff1f;哈哈&#xff0c;没关系&#xff0c;跟着博主&#xff0c;包你全会。今…...

Java的Atomic原子类

Java SDK 并发包里提供了丰富的原子类&#xff0c;我们可以将其分为五个类别&#xff0c;这五个类别提供的方法基本上是相似的&#xff0c;并且每个类别都有若干原子类。 对基本数据类型的变量值进行原子更新&#xff1b;对对象变量的指向进行原子更新&#xff1b;对数组里面的…...

离线语音控制新方案,NRK3303语音识别芯片在智能风扇的应用

随着科技的不断发展&#xff0c;智能家居已经成为人们日常生活中不可或缺的一部分&#xff0c;涌现出越来越多的智能设备&#xff0c;如智能门锁、智能灯泡、智能冰箱等&#xff0c;这些设备为人们的生活带来了更多的便利和创新。其中作为常见的风扇通过添加智能语音控制功能&a…...

在树莓派3B+上安装Pytorch1.7

在树莓派3B上安装Pytorch1.7(应该是最简单的方法了)_package libopenblas-dev has no installation cand_Chauncey_Wang的博客-CSDN博客由于项目要求&#xff0c;我需要在树莓派上安装pytorch这就有几个问题&#xff0c;首先吧&#xff0c;咱们和外面之间有一道长城&#xff0c…...

Java性能权威指南-总结4

Java性能权威指南-总结4 Java性能调优工具箱操作系统的工具和分析CPU运行队列磁盘使用率网络使用率 Java监控工具基本的VM信息 Java性能调优工具箱 操作系统的工具和分析 CPU运行队列 快速小结 检查应用性能时&#xff0c;首先应该审查CPU时间。优化代码的目的是提升而不是…...

c语言全局变量和局部变量问题汇总

✅作者简介&#xff1a;嵌入式领域优质创作者&#xff0c;博客专家 ✨个人主页&#xff1a;咸鱼弟 &#x1f525;系列专栏&#xff1a;单片机设计专栏 &#x1f4c3;推荐一款求职面试、刷题神器&#x1f449;注册免费刷题 1、关键字static的作用是什么&#xff1f; 定义静态变…...

14.3:给定一个由字符串组成的数组strs,必须把所有的字符串拼接起来,返回所有可能的拼接结果中字典序最小的结果

给定一个由字符串组成的数组strs&#xff0c;必须把所有的字符串拼接起来&#xff0c;返回所有可能的拼接结果中字典序最小的结果 贪心写法 首先注意的一点是&#xff1a;如果两个字符串的长度相同&#xff0c;“abc”&#xff0c;“abd”&#xff0c;肯定是“abc”的字典序最…...

C++ 项目实战:跨平台的文件与视频压缩解压工具的设计与实现

C实战&#xff1a;跨平台文件与视频压缩解压工具的设计与实现 一、引言&#xff08;Introduction&#xff09;1.1 项目背景与目标1.2 技术选型&#xff1a;C、FFmpeg、libarchive、libzip、QtCFFmpeglibarchivelibzipQt 二、设计思路与框架&#xff08;Design Philosophy and F…...

C和指针(二)数据

数据类型 1&#xff0c;C语言中仅有四种基本数据类型——整型、浮点型、指针、聚合类型&#xff08;数组、结构等&#xff09;。 2&#xff0c;整型包括字符、短整型、整型、长整型&#xff0c;且可以分为有符号和无符号两种版本。 1&#xff09;长整型至少和整型一样长&#…...

PyTorch基础学习(一)

一.简介 PyTorch是一个基于Python的开源机器学习框架&#xff0c;它提供了丰富的工具和接口&#xff0c;用于构建和训练深度学习模型。PyTorch的主要特点包括&#xff1a; 动态计算图&#xff1a; PyTorch使用动态计算图&#xff0c;这意味着在模型构建过程中可以实时地进行计…...

chatgpt赋能python:Python代做:让您的网站更友好的SEO利器

Python代做&#xff1a;让您的网站更友好的SEO利器 如果您是一位网站管理员或者SEO工程师&#xff0c;您一定知道SEO对于网站的重要性。那么在SEO中&#xff0c;Python代做可以为您提供什么&#xff1f;在本文中&#xff0c;我们将通过介绍Python代做的技术和方法&#xff0c;…...

2022年都快结束了,还有人不会安卓录屏?在安卓上录制屏幕的的实现方式

前言 在我之前的文章 《以不同的形式在安卓中创建GIF动图》 中&#xff0c;我挖了一个坑&#xff0c;可以通过录制屏幕后转为 GIF 的方式来创建 GIF。只是当时我只是提了这么一个思路&#xff0c;并没有给出录屏的方式&#xff0c;所以本文的内容就是教大家如何通过调用系统 A…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)

参考官方文档&#xff1a;https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java&#xff08;供 Kotlin 使用&#xff09; 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

嵌入式常见 CPU 架构

架构类型架构厂商芯片厂商典型芯片特点与应用场景PICRISC (8/16 位)MicrochipMicrochipPIC16F877A、PIC18F4550简化指令集&#xff0c;单周期执行&#xff1b;低功耗、CIP 独立外设&#xff1b;用于家电、小电机控制、安防面板等嵌入式场景8051CISC (8 位)Intel&#xff08;原始…...

零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程

STM32F1 本教程使用零知标准板&#xff08;STM32F103RBT6&#xff09;通过I2C驱动ICM20948九轴传感器&#xff0c;实现姿态解算&#xff0c;并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化&#xff0c;适合嵌入式及物联网开发者。在基础驱动上新增…...

Docker拉取MySQL后数据库连接失败的解决方案

在使用Docker部署MySQL时&#xff0c;拉取并启动容器后&#xff0c;有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致&#xff0c;包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因&#xff0c;并提供解决方案。 一、确认MySQL容器的运行状态 …...

解析两阶段提交与三阶段提交的核心差异及MySQL实现方案

引言 在分布式系统的事务处理中&#xff0c;如何保障跨节点数据操作的一致性始终是核心挑战。经典的两阶段提交协议&#xff08;2PC&#xff09;通过准备阶段与提交阶段的协调机制&#xff0c;以同步决策模式确保事务原子性。其改进版本三阶段提交协议&#xff08;3PC&#xf…...

开疆智能Ethernet/IP转Modbus网关连接鸣志步进电机驱动器配置案例

在工业自动化控制系统中&#xff0c;常常会遇到不同品牌和通信协议的设备需要协同工作的情况。本案例中&#xff0c;客户现场采用了 罗克韦尔PLC&#xff0c;但需要控制的变频器仅支持 ModbusRTU 协议。为了实现PLC 对变频器的有效控制与监控&#xff0c;引入了开疆智能Etherne…...

【向量库】Weaviate概述与架构解析

文章目录 一、什么是weaviate二、High-Level Architecture1. Core Components2. Storage Layer3. 组件交互流程 三、核心组件1. API Layer2. Schema Management3. Vector Indexing3.1. 查询原理3.2. 左侧&#xff1a;Search Process&#xff08;搜索流程&#xff09;3.3. 右侧&…...

Q1起重机指挥理论备考要点分析

Q1起重机指挥理论备考要点分析 一、考试重点内容概述 Q1起重机指挥理论考试主要包含三大核心模块&#xff1a;安全技术知识&#xff08;占40%&#xff09;、指挥信号规范&#xff08;占30%&#xff09;和法规标准&#xff08;占30%&#xff09;。考试采用百分制&#xff0c;8…...