首页 > 其他分享 >CF348A Mafia 题解

CF348A Mafia 题解

时间:2024-03-09 12:33:39浏览次数:25  
标签:二分 int 题解 扩展 mid long CF348A 局数 Mafia

由于题目具有十分明显的单调性(若 \(x\) 局能满足要求,则 \(>x\) 局一定能满足;若 \(x\) 局无法满足要求,则 \(<x\) 局也无法满足),因此我们考虑进行二分答案。

二分所需要的局数 \(x\),设所有人想玩的总局数为 \(S\),由题意可得 \(S=\sum^{n}_{i=1}a_i\)。因为每局都会有 \(1\) 人主持,\(n-1\) 名选手,所以当局数为 \(x\) 时总选手为 \((n-1) \times x\),显然这个值应当 \(\ge S\) 才能满足所有人的要求。

因此在二分时,若 \((n-1) \times x \ge S\),则向右区间扩展(因为要求最少局数),否则向左区间扩展即可。需要注意二分左右边界的设定。

#include<bits/stdc++.h>
#define int long long //(可能)需要开 long long
using namespace std;

int n,s,m,a[100031];

signed main(){
    cin>>n;
    for(int i=1;i<=n;i++) //读入并求出 S
    	cin>>a[i],s+=a[i],m=max(m,a[i]); 
    int l=m-1,r=s+1; //注意左右边界设定
    while(l+1<r){
        int mid=(l+r)>>1;
        if(mid*(n-1)>=s) r=mid; //满足条件就向右扩展
        else l=mid; //否则向左扩展
    }
    cout<<r; //注意输出的是 r(因为是最小值)
    return 0;
}

标签:二分,int,题解,扩展,mid,long,CF348A,局数,Mafia
From: https://www.cnblogs.com/XOF-0-0/p/18062522

相关文章

  • [ABC297F] Minimum Bounding Box 2 题解
    容斥真有趣。有一个性质:两个相同的子矩阵,对答案的贡献一定相同。所以就只需要枚举矩阵大小即可。我们设当前矩阵长\(i\)宽\(j\)(对应的,\(H\)为长,\(W\)为宽),假如要给答案做出贡献,矩阵的四条边一定都有点,发现可以容斥了。至少\(0\)条边上有点的方案数为\(a=C_{i\times......
  • P4139 上帝与集合的正确用法 题解
    传送门我觉得这题最有意思的其实是"最终会固定为一个数"这个结论。扩展欧拉定理:\(a^b\bmodp\),当\(b\ge\varphi(p)\)时,\(a^b\equiva^{b\bmod\varphi(p)+\varphi(p)}\pmodp\)。所以\(2^{2^{2^{\cdots}}}\)可以递归求解。边界条件\(p=1\)。复杂度如何保证?其实就是......
  • P4774 屠龙勇士 题解
    传送门显然每一只龙对应了唯一的一把剑。用multiset可以求出每一把剑。于是题目就变成了:\[\begin{cases}b_1x\equiva_1\pmod{m_1}\\b_2x\equiva_2\pmod{m_2}\\\dots\\b_nx\equiva_n\pmod{m_n}\end{cases}\]如果\(b_i=1\),直接EXCRT即可。现在\(b_i>1\),还是以EXCRT......
  • APatch常见问题解答
    常见问题解答什么是APatch?APatch是一种类似于Magisk或KernelSU的root解决方案,但APatch提供更多功能。APatch分别结合了Magisk方便易用的通过boot.img安装的方法,和KernelSU强大的内核修补能力。APatch与Magisk的区别?Magisk对启动映像中的ramdisk进行补丁,以修改init系统。而AP......
  • P6810 「MCOI-02」Convex Hull 凸包 题解
    分析推式子题。\[ans=\sum\limits_{i=1}^{n}\sum\limits_{j=1}^{m}\tau(i)\tau(j)\tau(\gcd(i,j))\]对于\((i,j)\),若\(k\)是\((i,j)\)的因子,则\(k\)一定整除\(i,j\),所以有:\[\\\sum\limits_{i=1}^{n}\sum\limits_{j=1}^{m}\tau(i)\tau(j)\sum\limits......
  • CF1436E Complicated Computations 题解
    题目链接:CF或者洛谷关于\(mex\)问题是一个比较久远的问题,有很多经典的方法去解决。本题的\(mex\)是从正整数开始的,不要忽略掉。来讲讲常见的两种解决方案,首先回到题目所问,如果我们暴力地询问:\(1,2,3,4,.....mex\)是否都能由原数组构造出来,对于\(i\)如果它可以由原数组......
  • CF935D Fafa and Ancient Alphabet 题解
    讲一个很暴力的方法(为描述方便,下文\(a\)数组代表\(s1\),\(b\)数组代表\(s2\))。发现假如当前\(a_i\neb_i\),就不需要再向下枚举了,于是拥有了分类讨论的雏形。我们设\(inv\)代表进行到这一步的概率,可分为以下四种情况:\(a_i>0,b_i>0\)。此时假如\(a_i=b_i\),略过;若\(a_i>......
  • [HDU6647] Bracket Sequences on Tree 题解
    [HDU6647]BracketSequencesonTree题解一道纯靠自己推出来的换根\(dp+\)树哈希,写篇题解庆祝一下~~题意:给定一棵无根树,你可以任意选择根节点和遍历顺序,每次遍历时进入一个节点就标记一个(,离开一个节点就标记一个),问所有存在的括号序列有多少种,对998244353取模。先考虑根固......
  • CF contest 1935 Round 932 (Div. 2) A-D题解
    CodeforcesRound932(Div.2)A-D题解CodeforcesRound932(Div.2)绪言很菜,AB速度慢,卡在C,想DP,但是时间优化不下来,说服自己\(2\times10^3\)能过\(n^3\),D稍微简单,但是没看D,遂掉分。A.EntertainmentinMAC给你一个字符串\(s\)和一个偶整数\(n\)。你可以对它进行两种运......
  • 【教程】 iOS构建版本无效问题解决方案
     引言在进行iOS应用上架时,有时会遇到构建版本无效的问题,即通过XCode上传成功后,但在AppStoreConnect的TestFlight中无法显示构建版本,或者显示一会儿后就消失了。本文将介绍可能的原因分析,并提供解决问题的方法。问题描述最近一次上传新版本至AppStore后,发现在AppStoreCon......