Maximum Number of Coins You Can Get
给一个数组, 每次选三个数字, 只能拿到第二大的, 问怎么选的最大.
这题就是贪婪, 多看几个例子就知道, 因为拿不到最大的,所以排序后, 大端选两个, 小端选一个.
class Solution {
public:
int maxCoins(vector<int>& piles) {
sort(piles.begin(), piles.end(), greater<int>());
int res = 0;
int j = piles.size() - 1;
for(int i = 0;i <= j; i+=2){
res += piles[i+1];
j--;
}
return res;
}
};