WA的我怀疑人生。。

发现原来是循环中间就要break掉,不然爆int。

总感觉这题可以直接构造啊。。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define maxn 55
using namespace std;
int n,m,c[maxn],l=,r=,ans;
bool check(int x)
{
int ret=min(m,x);
for (int i=;i<=n;i++)
{
if (c[i]<x) ret-=(x-c[i]);
if (ret<) return false;
}
if (ret>=) return true;
return false;
}
int main()
{
scanf("%d%d",&n,&m);
for (int i=;i<=n;i++)
scanf("%d",&c[i]);
l=;r=;
while (l<=r)
{
int mid=l+r>>;
if (check(mid)) {ans=mid;l=mid+;}
else r=mid-;
}
printf("%d\n",ans);
return ;
}

BZOJ 1816 扑克牌的更多相关文章

  1. BZOJ 1816 扑克牌(二分)

    由于答案具有单调性,考虑二分答案并验证. 如果能凑齐x堆,因为每个joke在一个牌堆里最多只能用一次,则至多只能用min(x,m)个joke. 对于每个牌,如果这个牌的总数小于x,用joke补齐剩下的 ...

  2. [BZOJ 1816] [Cqoi2010] 扑克牌 【二分答案】

    题目链接:BZOJ - 1816 题目分析 答案具有可以二分的性质,所以可以二分答案. 验证一个答案 x 是否可行,就累加一下各种牌相对于 x 还缺少的量,如果总和超过了 x 或 m ,就不可行. 因 ...

  3. BZOJ 1816: [Cqoi2010]扑克牌( 二分答案 )

    二分答案.. 一开始二分的初始右边界太小了然后WA,最后一气之下把它改成了INF... -------------------------------------------------------- ...

  4. [BZOJ 1816][Cqoi2010]扑克牌(二分答案)

    题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1816 分析: 我先以为是道水题,但是要注意的是每套牌中Joker只能用1张的,所以就出现了可能 ...

  5. bzoj 1816: [Cqoi2010]扑克牌

    #include<cstdio> #include<iostream> using namespace std; ],ans; bool pan(int x) { int a1 ...

  6. BZOJ:1816 [Cqoi2010]扑克牌 (贪心或二分答案)

    题面 \(solution:\) 这道题难就难在你能否读懂题目的意思,我们将它翻译一下: 现在我有n根竹子(每根竹子有\(c_i\)节,每节竹子高度为1),我可以通过消耗一点法力值使某一根竹子的某两节 ...

  7. bzoj 1816 二分

    思路:二分答案,然后我们贪心地先不填最小的一堆,看在最小的一堆消耗完之前能不能填满其他堆. #include<bits/stdc++.h> #define LL long long #de ...

  8. 【BZOJ做题记录】07.07~?

    在NOI一周前重开一个坑 最后更新时间:7.08 07:38 7.06 下午做的几道CQOI题: BZOJ1257: [CQOI2007]余数之和sum:把k mod i写成k-k/i*i然后分段求后 ...

  9. 1816: [Cqoi2010]扑克牌

    Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 2737  Solved: 1082[Submit][Status][Discuss] Descripti ...

随机推荐

  1. 《javascript高级程序设计》第21章 Ajax和Comet

    21.1 XMLHttpRequest 对象  The XMLHttpRequest Object 21.1.1 XHR 的用法 XHR Usage 21.1.2 HTTP 头部信息 XHR Head ...

  2. js 时间处理

    1.格式化时间 function GetDateTimeFormatter(value) {        if (value == undefined) {            return &q ...

  3. SQL语句创建数据库,SQL语句删除数据库,SQL语句创建表,SQL语句删除表,SQL语句添加约束,SQL语句删除约束

    创建数据库: CREATE DATABASE Test --要创建的数据库名称 ON PRIMARY ( --数据库文件的具体描述 NAME='Test_data', --主数据文件的逻辑名称 FIL ...

  4. MATLAB实现矩阵分块相乘

    要实现一下功能,这里$\bf{x}_i$为行向量 $${\bf{A}} = \left[ \begin{array}{l}{{\bf{x}}_1}\\{{\bf{x}}_2}\end{array} \ ...

  5. mysql str_to_date字符串转换为日期

    mysql内置函数,在mysql里面利用str_to_date()把字符串转换为日期. 示例:分隔符一致,年月日要一致 select str_to_date('2008-4-2 15:3:28','% ...

  6. Neo4j图数据库简介和底层原理

    现实中很多数据都是用图来表达的,比如社交网络中人与人的关系.地图数据.或是基因信息等等.RDBMS并不适合表达这类数据,而且由于海量数据的存在,让其显得捉襟见肘.NoSQL数据库的兴起,很好地解决了海 ...

  7. oracle查询语句大全

    1.查处oracle数据库的字符编码格式 select * from v$nls_parameters t where t.PARAMETER='NLS_CHARACTERSET'; 如果查出的是ZH ...

  8. 水水更健康~~~~~~~~~~~~~~~AutoRun免疫的原理

    免疫AutoRun病毒的原理建立在一个无法删除的AutoRun.inf文件夹,以防止病毒生成用来运行的AutoRun.inf文件 打开命令提示符 输入: 1.cd \2.mkdir autorun.i ...

  9. 转: Div与table的区别

    1:速度和加载方式方面的区别 div 和 table 的差异不是速度,而是加载方式,速度只能是指网络速度,如果速度足够快,是没有差异的: div 的加载方式是即读即加载,遇到 <div> ...

  10. http://bootswatch.com/

    http://bootswatch.com/ http://v3.bootcss.com/examples/dashboard/