<ol>
我们不妨先猜想按照力量和重量之和来排序,力量与重量之和小的排前面,反之则排背面。那么我们就必要证明,在这种排序规则之下,我们得到的总压扁指数就是最小的总压扁指数我们假设第i头牛它的压扁指数是总压扁指数,那么它前面全部牛的总重量是\(w_1\)+\(w_2\)+....w(i-1),此时的总压扁指数为w1+w2+....+w(i-1)-si,那么我们怎样去证明这个压扁指数就是最小的呢?我们可以试着交换任意两行奶牛,好比我们让第i头奶牛与第i-1头奶牛交换,那么此时的总压扁指数就变成了w1+w2+...wi-s(i-1),我们只必要证明 w1+w2+..w(i-1)-si> a.s; } sort(a + 1, a + 1 + n, compare);//答案先最任意初始化为一个最小值 int res = -2e9; int t = 0; for (int i = 1; i