https://leetcode.com/problems/last-stone-weight/description/
주어진 정수 배열은 돌의 무게을 의미한다.
가장 무거운 두개를 서로 부딪힌다.
무게가 같으면 사라진다.
다르면, 그 차가 남는다.
마지막 남은 돌의 무게를 구하라.
이거는 easy 난이도가 맞다.
직관대로 풀어 준다.
코드
더보기
int lastStoneWeight(vector<int>& stones)
{
priority_queue<int> pqBuff;
for (int q = 0; q < stones.size(); ++q)
pqBuff.push(stones[q]);
while (pqBuff.size() >= 2)
{
int first = pqBuff.top(); pqBuff.pop();
int second = pqBuff.top(); pqBuff.pop();
if (first != second)
pqBuff.push(first - second);
}
return pqBuff.size()==0 ? 0 : pqBuff.top();
}
결과.
'Leetcode > NeetCode' 카테고리의 다른 글
[PriorityQueue][Medium] 215. Kth Largest Element in an Array (1) | 2024.07.20 |
---|---|
[PriorityQueue][Medium] 973. K Closest Points to Origin (0) | 2024.07.20 |
[👍][PriorityQueue][Easy] 703. Kth Largest Element in a Stream (0) | 2024.07.19 |
[BinaryTree][Medium] 105. Construct Binary Tree from Preorder and Inorder Traversal (0) | 2024.07.19 |
[BinaryTree][Medium] 230. Kth Smallest Element in a BST (0) | 2024.07.19 |