C. Party Lemonade
链接
[http://codeforces.com/group/1EzrFFyOc0/contest/913/problem/C]
分析
看代码,巧妙的贪心
代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
ll n,l;
ll c[40];
int i;
//freopen("in.txt","r",stdin);
while(cin>>n>>l){
ll ans=0;
for(i=0;i<n;i++)
cin>>c[i];
for(i=1;i<n;i++)
if(2*c[i-1]<c[i]) c[i]=2*c[i-1];//选择性价比最高
//下面很关键,你可以把一个十进制数换成二进制数,因为题目刚好type i has volume 2^i-1 liters
for(i=0;i<n;i++){
if(ans>c[i]) ans=c[i];//如果已经买的价格超过了现在的价格而现在的容量一定大于已经买的
//你多买了而且价格还底何乐而不为呢
if(l&1) ans+=c[i];//当二进制位为1的时候就买
l/=2;//相当于十进制化为二进制的过程
}
l*=2;//因为上面只枚举到第n种类型,可能没买完要买的而且我们每个for都除2所以要乘以2
ans+=l*c[n-1];//选最后的类型,因为剩下的是l*2^n-1升
cout<<ans<<endl;
}
return 0;
}
C. Party Lemonade的更多相关文章
- [LeetCode] Lemonade Change 买柠檬找零
At a lemonade stand, each lemonade costs $5. Customers are standing in a queue to buy from you, and ...
- [Swift]LeetCode860. 柠檬水找零 | Lemonade Change
At a lemonade stand, each lemonade costs $5. Customers are standing in a queue to buy from you, and ...
- LeetCode-860. Lemonade Change
At a lemonade stand, each lemonade costs $5. Customers are standing in a queue to buy from you, and ...
- [LeetCode] 860. Lemonade Change_Easy tag: Greedy
At a lemonade stand, each lemonade costs $5. Customers are standing in a queue to buy from you, and ...
- [LeetCode&Python] Problem 860. Lemonade Change
At a lemonade stand, each lemonade costs $5. Customers are standing in a queue to buy from you, and ...
- LeetCode – Lemonade Change
At a lemonade stand, each lemonade costs $5. Customers are standing in a queue to buy from you, and ...
- Codeforces 913C - Party Lemonade
913C - Party Lemonade 思路:对于第i个话费cost[i],取min(cost[i],2*cost[i-1]),从前往后更新,这样就可以保证第n个的话费的性价比最高,那么从最高位开 ...
- 【CodeForces】913 C. Party Lemonade
[题目]C. Party Lemonade [题意]给定n个物品,第i个物品重量为2^(i-1)价值为ci,每个物品可以无限取,求取总重量>=L的最小代价.1<=30<=n,1< ...
- Lemonade Trade
4990: Lemonade Trade 时间限制: 1 Sec 内存限制: 128 MB Special Judge提交: 88 解决: 17[提交][状态][讨论版][命题人:admin] ...
- 洛谷 P4379 [USACO18OPEN]Lemonade Line
P4379 [USACO18OPEN]Lemonade Line 题目描述 这是农场上一个炎热的夏日,Farmer John要给他的 NN 头奶牛发柠檬汽水了!所有的 NN 头奶牛(方便起见,编号为 ...
随机推荐
- 鸟哥的 Linux 私房菜Shell Scripts篇(四)
12.4 条件判断式 只要讲到『程式』的话,那么条件判断式,亦即是『 if then 』这种判别式肯定一定要学习的!因为很多时候,我们都必须要依据某些资料来判断程式该如何进行.举例来说,我们在上头的a ...
- HBase——强一致性详解
Hbase是一个强一致性数据库,不是“最终一致性”数据库,官网给出的介绍: “Strongly consistent reads/writes: HBase is not an "event ...
- 解决Fatal error in launcher: Unable to create process using '"'
问题 分析原因 网上看了很多方案都说直接运行 python3 -m pip install --upgrade pip 来升级pip版本就好了,这个在大多数情况下都是有用的.因为重装以后会根据更改后的 ...
- Android 怎样开启与关闭adb 的认证机制(google adb secure) (adb RSA 指纹认证)
前言 欢迎大家我分享和推荐好用的代码段~~声明 欢迎转载,但请保留文章原始出处: CSDN:http://www.csdn.net ...
- [CQOI2014]排序机械臂
嘟嘟嘟 最近复习复习平衡树,然后又体会到了那种感觉:"写代码半小时,debug一下午". 这题其实就是让你搞一个数据结构,支持一下操作: 1.区间翻转. 2.查询区间最小值所在位置 ...
- Jedis关于Set的API Demo
package com.daxin.jedis_datastructure; import java.util.Set; import org.junit.After; import org.juni ...
- CentOS 7.x编译安装Nginx1.10.3+MySQL5.7.16+PHP5.2 5.3 5.4 5.5 5.6 7.0 7.1多版本全能环境
准备篇 一.防火墙配置 CentOS 7.x默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop firewalld.se ...
- layui前端框架之分页
框架环境:SSM框架 为了保证效果,此次演示也用到了jQuery ui框架,大家最好也引入进来 一.去layui官网下载包,解压后,然后导入文件中,最好放再main/webapp文件夹下 官网地址如下 ...
- 素数判断-----埃氏筛法&欧拉筛法
埃氏筛法 /* |埃式筛法| |快速筛选素数| |15-7-26| */ #include <iostream> #include <cstdio> using namespa ...
- P1-Linux下安装MySQL及登录用户配置
Linux下安装MySQL及登录用户配置 环境:Centos7.4 Mysql5.6 1. 查询是否安装 MySQL和MariaDB rpm -qa | grep -i mysql rpm -q ...