[더블릿] - CSKYLINE
·
Algorithm/ETC
문제 풀이 자료구조에 대한 지식만 있다면 아주 간단하게 풀 수 있는 문제였다. 하지만, 처음엔 입력크기를 생각하지 못해서, 2차원 배열을 만들어 직접 그려가며 문제를 해결하는 바람에 시간초과가 발생했다. 점의 총 갯수가 500,000개가 되고 길이가 1,000,000이 되기에 1초란 시간은 매우 짧았다. 생각을 전환하여 나보다 낮은 층수가 나오기 전까지는 같은 건물 이라는 해답을 찾았다. 이를 해결하기 위해 stack을 생각했다. vector와 stack은 같은 동작을 하기에 평소 자주 사용하는 vector를 사용했다. 점의 좌표 중 y값을 stack에 담으며 top의 값과 비교하여 top이 클 경우 pop()연산과 함께 건물의 수를 카운트 한다. 반대로 top이 작을 경우에는 stack에 담아주며 다음..