algorithm/programmers
[프로그래머스/자바] 주식가격 풀이
hrniin
2022. 11. 14. 01:48
728x90
https://school.programmers.co.kr/learn/courses/30/lessons/42584
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
프로그래머스 코딩테스트 고득점 Kit의 스택/큐 Level 2 문제다.
스택을 사용하는 문제인 것 같은데 이중 for문이 더 간단할 것 같아 이렇게 구현했다.
주식 가격이 떨어질 때까지 sec를 1씩 증가시키고,
떨어지는 경우에 배열에 sec를 대입한다.
끝까지 한번도 떨어지지 않으면 배열이 갱신되지 않으므로
떨어지면 flag를 true, 떨어지지 않으면 false로 설정해
마지막에 flag값을 확인하고 false면 배열에 값을 갱신한다.
import java.util.ArrayList;
class Solution {
public int[] solution(int[] prices) {
int[] result = new int[prices.length];
for(int i=0;i<prices.length;i++) {
int sec = 0;
boolean flag = false;
for(int j=i+1;j<prices.length;j++) {
if(prices[i] > prices[j]) {
result[i] = ++sec;
flag = true;
break;
}
sec++;
}
if(!flag)
result[i] = sec;
}
return result;
}
}
728x90