본문 바로가기

priority queue compare2

[삼성역량테스트] 16236 아기 상어 풀이일시 : 2021-04-22 문제 : N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가지고 있고, 이 크기는 자연수이다. 가장 처음에 아기 상어의 크기는 2이고, 아기 상어는 1초에 상하좌우로 인접한 한 칸씩 이동한다. 아기 상어는 자신의 크기보다 큰 물고기가 있는 칸은 지나갈 수 없고, 나머지 칸은 모두 지나갈 수 있다. 아기 상어는 자신의 크기보다 작은 물고기만 먹을 수 있다. 따라서, 크기가 같은 물고기는 먹을 수 없지만, 그 물고기가 있는 칸은 지나갈 수 있다. 아기 상어가 어디로 이동할지 결정하는 방법은 아래와 같다. 더 이상 먹을 수 있는 물고.. 2021. 4. 23.
[개념정리] priority_queue priority_queue란 자료구조에서 우선순위큐는 먼저들어간데이터에 상관없이 우선순위가 높은 데이터가 먼저 반환되는 구조이다. C++ STL에서 priority_queue를 이용하여 쉽게 구현해낼 수 있다. vector container 기반으로 내부구조가 설정되어있다. ​ priority_queue사용 #include 선언 priority_queue변수명; priority_queuepq; 기본 사용 pq.push(element) // 우선순위큐에 원소 추가 pq.pop() //우선순위큐에서 top의 원소를 삭제 pq.top() //top에 있는 원소를 반환 pq.empty() //비어있으면 true 아니면 false 반환 pq.size() //우선순위큐에 포함되어있는 원소들의 수를 반환 기본적으로 .. 2020. 12. 26.
반응형