嘿嘿

 1#include <iostream>
 2#include <algorithm>
 3using namespace std;
 4typedef long long LL;
 5
 6int a[100010];
 7int N;
 8
 9int read() {
10    char c;
11    int ret;
12    while(c = getchar(), c < '0' | c > '9');
13    ret = c - '0';
14    while(c = getchar(), c >= '0' && c <= '9')ret = ret * 10 + c - '0';
15    return ret;
16}

17
18
19
20bool CheckSum(int m) {
21    LL n = (((LL)N) * N - N - 2/ 4;
22    int i, j = 0;
23    for(i = 0; i < N; i++{
24        while(j < i) {
25            if(a[i] - a[j] < m) {
26                n -= i - j;
27                break;
28            }

29            j++;
30        }

31    }

32    return n >= 0;
33}

34
35int main() {
36    int l, r;
37    while(cin >> N) {
38
39        for(int i = 0; i < N; i++{
40            scanf("%d", a + i);
41        }

42
43        l = 0;
44        r = a[N - 1- a[0];
45
46        while(l < r) {
47            int m = (l + r + 1>> 1;
48            if(CheckSum(m)) {
49                l = m;
50            }
 else
51                r = m - 1;
52        }

53        printf("%d\n", l);
54    }

55    system("pause");
56    return 0;
57}