标签:
Time Limit: 1000MS | Memory Limit: 65536K | |
Total Submissions: 11192 | Accepted: 5492 |
Description
Input
Output
Sample Input
5 3 1 2 8 4 9
Sample Output
3
Hint
Source
#include <cstdio> #include <algorithm> using namespace std; const int MAXN = 100000+5; int a[MAXN]; int n, c; bool ok(int d) { int pre = 0; for(int i = 1; i < c; ++i){ int cur = pre+1; while(cur < n && a[cur]-a[pre] < d) ++cur; if(cur == n) return false; pre = cur; } return true; } int main() { scanf("%d%d", &n, &c); for(int i = 0; i < n; ++i) scanf("%d", &a[i]); sort(a, a+n); int l = 0, r = 0x7fffffff; while(r-l > 1){ int mid = (l+r)/2; if(ok(mid)) l = mid; else r = mid; } printf("%d\n", l); return 0; }
标签:
原文地址:http://www.cnblogs.com/inmoonlight/p/5747124.html