반응형
사이트명 : 프로그래머스(Programmers)
문제명 : 탑
언어 : 자바(Java)
이번 문제도 역시 설명이 문제보다 더 어려운데
heights 배열을 주는데 배열 끝부터 배열 0 순서대로 진행한다
근데 배열에 현재 값보다 더 큰 값이 있으면
그 배열의 인덱스를 answer 배열에 넣어서 return 하면 된다는 얘기!!
예제로 예를 들면 배열에 6,9,5,7,4가 넣어져 들어오는데
4 다음으로 나오는 7이 4보다 큰데 그럼
[0,0,0,0,4]가 된다
그 다음 값인 7은 9가 더 높은 값이므로
[0,0,0,2,4] ... 이런 식으로 진행한다
내 풀이방법은 아래와 같은데
일단 탑 배열을 +1칸 해서 넣어줬는데
이거는 내가 배열 -1 하면서 비교하는게 어려워서
일부러 한칸 더 크게 배열을 만든 뒤
배열의 0번째 인덱스는 버리고 1번째 인덱스부터 하려고 해서 +1을 해 준거다
다음으로는 for문을 역순으로 돌리는데
다음 타워값이 현재 타워값보다 크다면 그 값의 인덱스를
answer 배열에 넣어주고
만약 역순으로 돌리는 와중 현재 값보다 더 큰 값이 배열에 없다면 0을 넣어주면 된다
이후 for문이 끝나면 완성된 배열을 반환하면 된다
반응형
'Language > 알고리즘 문제풀이' 카테고리의 다른 글
프로그래머스 약수의 합 풀이(Java) (0) | 2019.09.04 |
---|---|
프로그래머스 이상한 문자 만들기 풀이(Java) (0) | 2019.09.04 |
프로그래머스 스킬트리 풀이 (0) | 2019.09.03 |
프로그래머스 소수 찾기 풀이 (0) | 2019.09.01 |
프로그래머스 직사각형 별찍기 풀이 (0) | 2019.09.01 |
댓글