[프로그래머스] 42588 탑

최대 1 분 소요

프로그래머스 level2

문제


문제 풀이


문제 리뷰



층이 다른 탑들이 왼쪽으로 신호를 보낸다.
그 신호는 자신보다 층이 높은 탑에서만 받을 수 있다.
그래서 위의 그림과 같이 신호를 받게 된다.
각각의 탑들이 보낸 신호를 어느 탑에서 받았는지를 구하는 문제이다.

나는 주어진 탑의 배열을 뒤에서부터 살펴보기로 했다.
왼쪽으로 신호를 보내니까 뒤에서부터 배열을 탐색하면
자신보다 큰 층을 찾았을 때, 그 탑이 자신이 보낸 신호를 받을 수 있는 탑이다.

탑의 신호를 받은 탑의 인덱스를 저장할 배열부터 생성했다.

그리고 이중 반복문을 통해 배열의 끝부터 돌리고
그 안에서 기준 배열의 전 배열부터 차례로 비교를 했다.

그리고 기준 배열보다 큰 배열을 찾으면
큰 배열의 인덱스를 새로 만든 배열에 저장했다.

자신보다 큰 탑을 찾으면 그 이후 탑은 볼 이유가 없기 때문에
break문으로 탈출했다.

TMI

드디어 level2 시작!

1일 1알고리즘 완료🤓

댓글남기기