记录编号 511462 评测结果 AAAAAAAAAA
题目名称 [NOIP 2015]跳石头 最终得分 100
用户昵称 Gravatarleon 是否通过 通过
代码语言 C++ 运行时间 0.016 s
提交时间 2018-09-26 22:48:23 内存使用 0.15 MiB
显示代码纯文本
#include <iostream>    
#include <cstdio>    
#include <cmath>    
#include <string>
#include <algorithm>    
using namespace std; 
   int a[50005],n,m,k,l,r,mid;	
int ch(int t){
		int last=0,k1=0;
	for(int i=1;i<=m+1;i++){
		if(a[i]-last<t){
			k1++;
		}
		else{
			
			last=a[i];
		}		
		if(k1>k){
			return 0;
		} 
	}	

	return 1;
	
}
int Main()  
{   
	freopen("2015stone.in","r",stdin);    
    freopen("2015stone.out","w",stdout); 

    ios::sync_with_stdio(false);
	int ans;
    cin>>n>>m>>k;
    for(int i=1;i<=m;i++){
		cin>>a[i];
    }
    a[m+1]=n;
    l=0;
    r=n;
    while(l<=r){
	    int	mid=(l+r)/2;
		if(ch(mid)==1){
			l=mid+1;
			ans=mid;
		}
		else{
			r=mid-1;
		}
		}
	cout<<ans;
    return 0 ;  
}  
int oo=Main();
int main(){;
}