小蓝与捉迷藏
思路分析
代码实现
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define int long long
const int N=1e5+10;
int a[N];
int n;
bool check(int x){
int sum=0;
for(int i=0;i<n;i++)
sum+=x-a[i];
if(sum>=x)
return true;
return false;
}
signed main()
{
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
cin>>n;
int maxv=0;
for(int i=0;i<n;i++){
cin>>a[i];
maxv = max(maxv, a[i]);
}
int l=maxv,r=2e9;
while(l<r){
int mid=l+r>>1;
if(check(mid)) r=mid;
else l=mid+1;
}
cout<<r<<endl;
return 0;
}
同类题型
视频讲解
⬅️ 学生和导师 🏠 00-刷题理模型 ➡️ 小蓝与换装大赛
💬 评论