hdu 5248

来源:互联网 发布:编程电脑配置要求 编辑:程序博客网 时间:2024/05/16 15:42

正在做二分,还是被二分虐啊

#include<iostream>#include<cstdio>using namespace std;int a[100005];int b[100005];int main(){std::ios::sync_with_stdio(false);int t;cin>>t;int kase;for(kase=1;kase<=t;kase++){int n;cin>>n;int i,j;for(i=0;i<n;i++)cin>>a[i];int l=0;int r=10000000;int d ;while(l<r){d=(l+r)/2;b[n-1]=a[n-1]+d;for(i=n-2;i>=0;i--){if(a[i]-d<b[i+1]){if(a[i]+d>=b[i+1])//一定要加等于哟b[i]=b[i+1]-1;else b[i]=a[i]+d;}else{break;}}if(i<0){r=d;}elsel=d+1;}cout<<"Case #"<<kase<<":"<<endl;cout<<l<<endl;}}


0 0