River Hopscotch POJ
阿新 • • 發佈:2018-12-17
import java.util.*; public class Main{ Scanner scan=new Scanner(System.in); int l,n,m; int[] s=new int [50010]; public Main() { super(); input(); js(); } public void input() { l=scan.nextInt(); n=scan.nextInt(); m=scan.nextInt(); s[0]=0; for (int i = 1; i <= n; i++) { s[i]=scan.nextInt(); } s[n+1]=l; } public void js() { Arrays.sort(s,0,n+2); int L=0,R=l ; while(L<=R) { int mid=L+(R-L)/2, i=0,p=0; while(i<=n) { int j=i+1; while(j<=n+1&&s[j]-s[i]<mid) j++; p+=j-i-1; i=j; } if(p<=m) { L=mid+1; } else{ R=mid-1; } } System.out.println(L-1); } public static void main(String[] args) { new Main(); } }