hdu - 6276,2018CCPC湖南全國邀請賽A題,水題,二分
阿新 • • 發佈:2018-06-03
sum 題意 論文 cto 最大 最大值 nbsp span class
題意: 求H的最大值, H是指存在H篇論文,這H篇被引用的次數都大於等於H次.
思路:題意得, 最多只有N遍論文,所以H的最大值為N,
常識得知H的最小值為0.
所以H的答案在[0,N]之間,二分搜一下,如果滿足就提高下限,不滿足則降低上限.
嗯就這樣!!!!
AC code:
#include<bits/stdc++.h> using namespace std; int n; vector<int> cc(200005); int main() { bool check(int t); while(scanf("%d",&n)!=EOF) {for(int i=0;i<=n;i++) cin>>cc[i]; int minn=0; int maxx=n; int ans=0; while(minn<=maxx) { int mid=(maxx-minn)/2+minn; if(check(mid)) { minn=mid+1; ans=mid; } else maxx=mid-1; } cout<<ans<<endl;}return 0; } bool check(int t) { long long sum=0; for(int i=t;i<=n;i++) sum+=cc[i]; if(sum>=t) return true; else return false; }
hdu - 6276,2018CCPC湖南全國邀請賽A題,水題,二分