[LeetCode] 1561. Maximum Number of Coins You Can Get
풀이
- 매 차례마다 Alice는 가장 큰 수를 고르고, 나는 두 번째로 큰 수를 고르고, Bob은 가장 작은 수를 고르면 된다
#include <vector>
#include <algorithm>
#include <deque>
class Solution {
public:
int maxCoins(vector<int>& piles) {
sort(piles.begin(), piles.end());
reverse(piles.begin(), piles.end());
deque<int> dq(piles.begin(), piles.end());
long long ans = 0LL;
while(!dq.empty()){
dq.pop_front();
if(dq.empty()) break;
ans += dq.front();
dq.pop_front();
if(dq.empty()) break;
dq.pop_back();
}
return ans;
}
};