这是一道leetcode题,sort中的语句我们可以理解为让我们要的顺序返回负数或false。
class Solution {
public int twoCitySchedCost(int[][] costs) {
//让其以costs[0]-costs[1]的差值从小到大排序。
Arrays.sort(costs, (a, b) -> {
return (a[0] - a[1]) - (b[0] - b[1]);
});
//前一半取去A市,后一半取去B市,前一半是去A市最合适,
//后一半市去B市最合适。
int sum = 0;
for (int i = 0; i < costs.length; ++i) {
if (i < costs.length / 2) {
sum += costs[i][0];
} else {
sum += costs[i][1];
}
}
return sum;
}
}