728x90
이중 우선순위 큐는 다음연산을 할 수 있는 자료구조를 뜻한다
대문자 I 숫자 : 큐에 주어진 숫자를 삽입하고
D 1 : 큐에서 최댓값을 삭제
D-1 : 큐에서 최솟값을 삭제
큐가 할 연산 operations가 매개변수로 주어질 때, 모든 연산을 처리한 후 큐가 비어있다면 {0,0}을 비어있지 않다면
{최댓값, 최솟값}을 반환한다
operations에는 큐가 수행할 연산이 주어지며 빈 큐에 데이터를 삭제하라는 연산은 무시한다
최대값과 최솟값을 받아줄 우선순위 큐를 두개 선언하고
unordered_map으로 숫자 삽입과 삭제 여부를 기록해준다
operations에 있는 문자열을 반복문을 통해 istringstream으로 공백을 기준으로 문자와 숫자를 잘라주고
if문을 이용해 I D D-1을 조건을 설정해 큐에 대한 연산을 진행하여준다.
728x90
'프로그래머스 C++' 카테고리의 다른 글
프로그래머스 등굣길 C++ (0) | 2025.01.14 |
---|---|
프로그래머스 단어 변환 C++ (0) | 2025.01.14 |
프로그래머스 야근 지수 C++ (0) | 2025.01.13 |
프로그래머스 네트워크 C++ (0) | 2025.01.13 |
프로그래머스 정수 삼각형 C++ (0) | 2025.01.10 |