\[SWEA 배양 용기의 크기는 무한하다고 가정하였기 때문에 map을 따로 두지 않고 그냥 좌표로만 관리하였더니 시간 초과가 났다 → 초기 줄기 세포 영역의 넓이가 NxM 이고, 배양 시간은 최대 K이기 때문에 map의 크기를 N+2\*K 로 두고 좌표를 다시 관리했다
문제에서 보면 '먼저 푸는 것이 좋은 문제'가 있다는 말은 문제에 '순서'가 있다는 말이다. 이것은 DFS로 풀 수 있는 가장 유명한 문제중 하나인 위상정렬 (topological Sort)로 푸는 문제이다.각 정점간의 순서를 저장하며 진입차수 증가예를 들어 위와같은
queue에서 단순하게 최댓값과 최솟값만 구하면 되므로 min heap과 max heap 두 개를 만든다.push는 각 queue에 해주고 max값을 pop할 경우 max heap에서, min값을 pop할 경우 min heap에서 pop을 해준다.
문제는 위와같이 한 번에 하나의 작업만 수행할 수 있는 하드디스크에 작업이 들어왔을 때, 요청부터 종료까지 걸린 시간이 평균을 가장 줄이는 방법으로 처리하는 평균을 구하는 문제이다.priority_queue를 구현할 때 제일 첫 번째 인자는 queue에 담길 자료형,
우선순위 큐는 순서대로 기다리고 있는 자료들을 저장하는 자료 구조 라는 점에서 큐와 비슷하지만, 우선순위가 가장 높은 자료가 가장 먼저 꺼내진다는 차이가 있다.우선순위 큐는 이진 검색 트리보다 훨씬 단순한 구조로 구현할 수 있는데, 그중 대표적인 것이 heap 이라는