题面

\(solution:\)

这道题难就难在你能否读懂题目的意思,我们将它翻译一下:

现在我有n根竹子(每根竹子有\(c_i\)节,每节竹子高度为1),我可以通过消耗一点法力值使某一根竹子的某两节之间再长出特殊的一节,现在我有m点法力值,我需要在保证同一高度只能有不超过1节特殊的竹节的情况下,使最矮的那根竹子高度尽可能的高

怎么样,会了吧!(最矮的那根竹子高度尽可能的高,这还看不出二分答案白学了)

\(code:\)

#include<iostream>
#include<cstdio>
#include<iomanip>
#include<algorithm>
#include<cstring>
#include<cstdlib>
#include<ctime>
#include<cmath>
#include<vector>
#include<queue>
#include<map>
#include<set>#define ll long long
#define db double
#define inf 0x7fffffff
#define min(A,B) (A>B?B:A)
#define rg register intusing namespace std;struct su{int k,v;
}a[55];int n,m,t,x,ans;inline int qr(){char ch;while((ch=getchar())<'0'||ch>'9');int res=ch^48;while((ch=getchar())>='0'&&ch<='9')res=res*10+(ch^48);return res;
}inline bool cmp_v(su x,su y){return x.v<y.v;}int main(){freopen("cards.in","r",stdin);freopen("cards.out","w",stdout);n=qr(),m=qr();for(rg i=1;i<=n;++i)a[i].k=i,a[i].v=qr();sort(a+1,a+n+1,cmp_v);ans=t=a[1].v; a[n+1].v=inf;for(rg i=1;i<=n;++i){x=(i-1)?min(m/i,t/(i-1)):(m/i);x=min(x,a[i+1].v-a[i].v);ans+=x,m-=x*i,t-=x*(i-1);}printf("%d\n",ans);return 0;
}

转载于:https://www.cnblogs.com/812-xiao-wen/p/10366998.html

BZOJ:1816 [Cqoi2010]扑克牌 (贪心或二分答案)相关推荐

  1. bzoj 1614 Telephone Lines架设电话线 - 二分答案 - 最短路

    Description Farmer John打算将电话线引到自己的农场,但电信公司并不打算为他提供免费服务.于是,FJ必须为此向电信公司支付一定的费用. FJ的农场周围分布着N(1 <= N ...

  2. BZOJ 1305 dance跳舞(最大流+二分答案)

    题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1305 解题思路: 转自:https://blog.csdn.net/u012288458 ...

  3. Bzoj 3343: 教主的魔法(分块+二分答案)

    3343: 教主的魔法 Time Limit: 10 Sec Memory Limit: 256 MB Description 教主最近学会了一种神奇的魔法,能够使人长高.于是他准备演示给XMYZ信息 ...

  4. 洛谷3933 Chtholly Nota Seniorious 二分答案+贪心

    题目链接 题意 给你一个N*M的矩阵 (N,M <=2000)  把他分成两部分 使两部分的极差较大的一个最小  求这个最小值.然后分矩阵的要求是:每个部分内部的方块之间,可以通过上下左右相互到 ...

  5. BZOJ 3993 Luogu P3324 [SDOI2015]星际战争 (最大流、二分答案)

    字符串终于告一段落了! 题目链接: (bzoj) https://www.lydsy.com/JudgeOnline/problem.php?id=3993 (luogu) https://www.l ...

  6. BZOJ 4326 NOIP2015 运输计划(树上差分+LCA+二分答案)

    4326: NOIP2015 运输计划 Time Limit: 30 Sec  Memory Limit: 128 MB Submit: 1388  Solved: 860 [Submit][Stat ...

  7. 【BZOJ3048】Cow lineup,贪心+队列维护(或二分答案)

    传送门(权限题) 题面: 3048: [Usaco2013 Jan]Cow Lineup Time Limit: 2 Sec Memory Limit: 128 MB Submit: 121 Solv ...

  8. BZOJ 1738: [Usaco2005 mar]Ombrophobic Bovines 发抖的牛( floyd + 二分答案 + 最大流 )

    一道水题WA了这么多次真是.... 统考终于完 ( 挂 ) 了...可以好好写题了... 先floyd跑出各个点的最短路 , 然后二分答案 m , 再建图. 每个 farm 拆成一个 cow 点和一个 ...

  9. 数学题 贪心+二分答案

    Description 现在有两个数组 AA 和 BB, 分别包含 xx 与 yy 个元素. 定义一个新的数组 CC, CC 中包含 x×yx×y 个元素,为 AA 中所有元素除以 BB 中所有元素. ...

  10. Bzoj 1926: [Sdoi2010]粟粟的书架(二分答案+乱搞+主席树)

    1926: [Sdoi2010]粟粟的书架 Time Limit: 30 Sec Memory Limit: 552 MB Description 幸福幼儿园 B29 班的粟粟是一个聪明机灵.乖巧可爱 ...

最新文章

  1. idea运行两个tomcat_IDE里的Tomcat是如何工作的
  2. VMware下Ubuntu联网操作
  3. adb 常用命令大全
  4. Resource stopwords not found. Please use the NLTK Downloader to obtain the r
  5. matlab中fprintf函数的具体使用方法
  6. c#字符相似度对比通用类
  7. gis属性表怎么导成excel_将Excel数据导入到ArcGIS属性表
  8. 计算机应用专业配置标准,计算机应用专业技能抽查考试标准.doc
  9. windows 的快捷截图
  10. java 苹果cms 萌果_MacCMS8.x(苹果CMS8.x)整合Ckplayer6.4
  11. 小明左右手分别拿了两张牌,黑桃十和红心八,现在交换手中的牌。编写一个程序模拟这一过程:两个整数分别保存两个变量,将这两个变量的值互换,并输出互换后的结果
  12. Automatic Detection of Welding Defects Using Faster R-CNN
  13. Ariduino入门笔记——1. Arduino 默认函数(数字接口/模拟接口)
  14. PDF如何翻译?看完这个方法就学会了
  15. ORACLE-EBS常用表
  16. RAR压缩包,去除密码?
  17. flutter dio网络请求 get post 图片上传
  18. 不写代码也能实现android应用
  19. 100MHz分出1Hz的verilog代码
  20. 英语老师怎么抓学生成绩

热门文章

  1. 『中级篇』Docker-Stack部署wordpress(49)
  2. S9300 STP 配置规范
  3. ASP(从前) vs ASP.NET(之后)
  4. 走进javascript——解开switch之谜
  5. [转]设置修改CentOS系统时区
  6. 红帽RHEL5U4平台实现pppoe+freeradius+mysql认证服务器(一)
  7. 太傻了!下次二面再回答不好“秒杀系统“设计原理,我就捶死自己...
  8. 常用Maven插件终极大全,速度收藏!
  9. 大型网站技术架构-入门梳理
  10. 饿了么异地多活技术实现