[CQOI 2010]扑克牌

简介: [CQOI 2010]扑克牌

题目: [CQOI 2010]扑克牌 ,哈哈,我们今天来看一道二分答案的题嘛,这是选自CQOI上的一道题,好了,我们一起来看看题意吧:

考虑到直接复制题目,或者截屏的方式不是很方便阅读,我就把直接题目链接放下面!

题目传送门: [CQOI2010]扑克牌

思路:

直接二分答案,假设答案是x,那么差的joker数量必须要小于等于m,然后根据题目要求,每套只能用1张joker,所以差的joker数量还要小于等于x,具体的我们直接看代码!

我们来看看成功AC的代码吧:

#include<bits/stdc++.h>
using namespace std;
#define inf 0x3f3f3f3f
typedef long long ll;
int n,m;
const int N=60;
int a[N];
ll cnt;
int check(int x){
    cnt=0;
    for(int i=1;i<=n;i++)
        if(a[i]<x) cnt+=x-a[i];
    return cnt<=min(m,x);
}
int main(){
    ios::sync_with_stdio(false);
    cin>>n>>m;
    for(int i=1;i<=n;i++) cin>>a[i];
    ll l=0,r=inf;
    while(l<r){//二分模板
        ll mid = (l+r+1)>>1;
        if(check(mid)) l=mid;
        else r=mid-1;
    }
    cout<<l<<"\n";
    return 0;
}


相关文章
|
6月前
剑指 Offer 61:扑克牌中的顺子
剑指 Offer 61:扑克牌中的顺子
32 0
【剑指offer】-扑克牌顺子-44/67
【剑指offer】-扑克牌顺子-44/67
|
机器学习/深度学习 算法 C++
剑指offer(C++)-JZ61:扑克牌顺子(算法-模拟)
剑指offer(C++)-JZ61:扑克牌顺子(算法-模拟)
图解LeetCode——面试题61. 扑克牌中的顺子
图解LeetCode——面试题61. 扑克牌中的顺子
123 1
|
容器
剑指offer 69. 扑克牌的顺子
剑指offer 69. 扑克牌的顺子
92 0
剑指offer_递归与循环---扑克牌顺子
剑指offer_递归与循环---扑克牌顺子
50 0
|
程序员
线性表练习扑克牌游戏(炸金花)
线性表练习扑克牌游戏(炸金花)
158 0
线性表练习扑克牌游戏(炸金花)
|
开发工具
扑克牌问题
扑克牌问题
扑克牌问题
|
算法
【刷算法】扑克牌顺子
【刷算法】扑克牌顺子