[USACO10FEB]购买巧克力Chocolate Buying
题目描述
Bessie and the herd love chocolate so Farmer John is buying them some.
The Bovine Chocolate Store features N (1 <= N <= 100,000) kinds of chocolate in essentially unlimited quantities. Each type i of chocolate has price P_i (1 <= P_i <= 10^18) per piece and there are C_i (1 <= C_i <= 10^18) cows that want that type of chocolate.
Farmer John has a budget of B (1 <= B <= 10^18) that he can spend on chocolates for the cows. What is the maximum number of cows that he can satisfy? All cows only want one type of chocolate, and will be satisfied only by that type.
Consider an example where FJ has 50 to spend on 5 different types of chocolate. A total of eleven cows have various chocolate preferences:
Chocolate_Type Per_Chocolate_Cost Cows_preferring_this_type 1 5 3
2 1 1
3 10 4
4 7 2
5 60 1
Obviously, FJ can't purchase chocolate type 5, since he doesn't have enough money. Even if it cost only 50, it's a counterproductive purchase since only one cow would be satisfied.
Looking at the chocolates start at the less expensive ones, he can * purchase 1 chocolate of type #2 for 1 x 1 leaving 50- 1=49, then * purchase 3 chocolate of type #1 for 3 x 5 leaving 49-15=34, then * purchase 2 chocolate of type #4 for 2 x 7 leaving 34-14=20, then * purchase 2 chocolate of type #3 for 2 x 10 leaving 20-20= 0.
He would thus satisfy 1 + 3 + 2 + 2 = 8 cows.
贝西和其他奶牛们都喜欢巧克力,所以约翰准备买一些送给她们。奶牛巧克力专卖店里
有N种巧克力,每种巧克力的数量都是无限多的。每头奶牛只喜欢一种巧克力,调查显示,
有Ci头奶牛喜欢第i种巧克力,这种巧克力的售价是P。
约翰手上有B元预算,怎样用这些钱让尽量多的奶牛高兴呢?
输入输出格式
输入格式:
* Line 1: Two space separated integers: N and B
* Lines 2..N+1: Line i contains two space separated integers defining chocolate type i: P_i and C_i
输出格式:
* Line 1: A single integer that is the maximum number of cows that Farmer John can satisfy
输入输出样例
5 50
5 3
1 1
10 4
7 2
60 1
8
#include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
const int M=;
int n;
long long b,ans;
inline long long get(){
char c=getchar();
long long res=;
while (c<''||c>'') c=getchar();
while (c>=''&&c<=''){
res=(res<<)+(res<<)+c-'';
c=getchar();
}
return res;
}
struct node{
long long p,c;
}a[M];
bool cmp(node x,node y){
return x.p<y.p;
}
int main() {
n=get(),b=get();
for (int i=;i<=n;i++) a[i].p=get(),a[i].c=get();
sort(a+,a+n+,cmp);
for (int i=;i<=n&&b>=a[i].p;i++){
long long j=b/a[i].p;
if (j>=a[i].c) b-=a[i].p*a[i].c,ans+=a[i].c;
else {ans+=j;break;}
//cout<<b<<" "<<ans<<endl;
}
cout<<ans<<endl;
system("pause");
return ;
}
[USACO10FEB]购买巧克力Chocolate Buying的更多相关文章
- 洛谷——P2983 [USACO10FEB]购买巧克力Chocolate Buying
P2983 [USACO10FEB]购买巧克力Chocolate Buying 题目描述 Bessie and the herd love chocolate so Farmer John is bu ...
- 洛谷 P2983 [USACO10FEB]购买巧克力Chocolate Buying 题解
P2983 [USACO10FEB]购买巧克力Chocolate Buying 题目描述 Bessie and the herd love chocolate so Farmer John is bu ...
- 洛谷 P2983 [USACO10FEB]购买巧克力Chocolate Buying
购买巧克力Chocolate Buying 乍一看以为是背包,然后交了一个感觉没错的背包上去. #include <iostream> #include <cstdio> #i ...
- 洛谷P2983 [USACO10FEB]购买巧克力Chocolate Buying
题目描述 Bessie and the herd love chocolate so Farmer John is buying them some. The Bovine Chocolate Sto ...
- P2983 [USACO10FEB]购买巧克力Chocolate Buying
题目描述 Bessie and the herd love chocolate so Farmer John is buying them some. The Bovine Chocolate Sto ...
- 【洛谷】P2983 [USACO10FEB]购买巧克力Chocolate Buying(贪心)
题目描述 Bessie and the herd love chocolate so Farmer John is buying them some. The Bovine Chocolate Sto ...
- 洛谷—— P2983 [USACO10FEB]购买巧克力Chocolate Buying
https://www.luogu.org/problem/show?pid=2983 题目描述 Bessie and the herd love chocolate so Farmer John i ...
- [USACO10FEB]购买巧克力Chocolate Buying 【假背包真贪心】 By cellur925
题目传送门 继续dp刷题计划,看到这道题,第一眼感觉不就是显然的完全背包嘛.把背包打完要开始填充数组大小的时候成为了mengbier,发现数据极大,达到了1e18.显然这不是一道平凡的背包题目. 于是 ...
- [luoguP2983] [USACO10FEB]购买巧克力Chocolate Buying(贪心)
传送门 按价格排序后贪心 ——代码 #include <cstdio> #include <iostream> #include <algorithm> int n ...
随机推荐
- assets和static
相同点: assets和static两个都是存放静态资源文件.项目中所需要的资源文件图片,字体图标,样式文件等都可以放在这两个文件下. 不相同点: assets中存放的静态资源文件在项目打包时,也就是 ...
- Java实验报告(三)&第五周课程总结
班级 计科二班 学号 20188425 姓名 IM 完成时间2019/9/27 评分等级 实验三 String类的应用 实验目的 掌握类String类的使用: 学会使用JDK帮助文档: 实验内容 1. ...
- 2018-8-10-win10-uwp-ping
title author date CreateTime categories win10 uwp ping lindexi 2018-08-10 19:17:19 +0800 2018-2-13 1 ...
- teb教程4
障碍物避障以及机器人足迹模型 简介:障碍物避障的实现,以及必要参数的设置对于机器人足迹模型和其对应的影响 1.障碍物避障是怎样工作的 1.1 惩罚项 障碍物避障作为整个路径优化的一部分.显然,优化是找 ...
- 同域SQL server 做镜像服务器遇到1418错误
今天遇到了如题所说的错误,查了一天没有看到好的解决方案,因为作者是小白,所以对于解决方案都是代码的那种,完全理解不了. 现在,讲述一下我的解决方法.因为是同域的服务器,这个时候说网络访问不了对方,但是 ...
- vue filters 日期
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Excel处理
转载:https://www.cnblogs.com/cang12138/p/5606130.html 上面的博友已经讲的很清楚了,但是我们在服务端是获取不到前端上传文件的绝对路径的(因为新浏览器有安 ...
- robotframework+python3+selenium自动化测试环境搭建---第一集
1.安装python3.6 1.1 可选择Customize installation自定义安装内容,记得要勾选Add to PATH(这样就不用自己配置环境变量了). 1.2 安装成功后,可以输入p ...
- sql 性能优化 索引碎片
1.索引 简单的说,索引就像书本的目录,目录可以快速找到所在页数,数据库中索引可以帮助快速找到数据,而不用全表扫描,合适的索引可以大大提高数据库查询的效率.(1). 优点大大加快了数据库检索的速度,包 ...
- HUE工具使用
1.HUE简介 来源 HUE=HadoopUser Experience,看这名字就知道怎么回事了吧,没错,直白来说就是Hadoop用户体验,是一个开源的Apache Hadoop UI系统,由Clo ...