K12648 采购大米

文章描述了一个关于在疫情背景下,如何通过优化算法帮助社区志愿者以最低成本采购大米的问题。给定不同供应商的单价和供应量,程序需要找出最小花费的采购方案。提供的C++代码实现了按单价排序并逐个消耗最小单价大米的策略,直到满足需求。
摘要由CSDN通过智能技术生成

题目描述

目前全国都在饱受新型冠状病毒疫情的困扰,疫情当前我们最大的贡献就是闭门不出。同时各个社区也有社区志愿者战斗在”防疫一线”,帮助居民采购生活物资,在社区门口管理和登记车辆和行人的出口等。小科的妈妈就是社区志愿者中的一员,负责物资的采购,而今天要采购的物资是大米,小科的妈妈一共需要采买M斤大米,小科的妈妈已经拿到了N名大米供应商的信息,每个供应商的价格不同,每个供应商的供应量也不一定相同,小科的妈妈需要挑选出一些供应商来满足采买需求。

但是小科的妈妈比较头疼,若要采购足够量的大米(如果供应量不够、则尽可能多的采购),如何采购才能使得花费最小呢?请你帮助小科的妈妈来解决这个问题吧。

输入格式

第一行,两个整数N和M,N表示的是大米供应商的数量,M表示需要采买的大米总量。

1≤N≤1000,0≤M≤10^6

接下来N行,是用空格隔开的一个小数和一个整数,分别表示第i个供应商的单价xi和这个供应商的供应量yi

1≤Xi≤10,0≤yi≤10^6

输出格式

一行,一个小数,表示小科妈妈要采购M斤大米所需要的最小花费,小数点后保留一位小数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值