Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- simulation
- 구현
- Class
- Counting
- Math
- Data Structure
- database
- SQL
- sorting
- 코테
- 코딩테스트
- greedy
- geometry
- Binary Tree
- string
- java
- Matrix
- two pointers
- dynamic programming
- 자바
- 파이썬
- bit manipulation
- Stack
- Number Theory
- array
- implement
- Binary Search
- hash table
- Method
- Tree
Archives
- Today
- Total
코린이의 소소한 공부노트
[프로그래머스/Lv.2] 주식가격 본문
1. Input
1) 초 단위로 기록된 주식가격이 담긴 배열 prices
2. Output
1) 가격이 떨어지지 않은 기간은 몇 초인지를 담은 배열
3. Constraint
1) prices의 각 가격은 1 이상 10,000 이하인 자연수
2) prices의 길이는 2 이상 100,000 이하
3) prices.length == 결과 배열의 길이
4. Example
Input: prices = [1, 2, 3, 2, 3] -> Output: [4, 3, 1, 1, 0]
설명:
- 1초 시점의 1은 떨어지지 않는다. -> 4초 유지
- 2초 시점의 2는 떨어지지 않는다 -> 3초 유지
- 3초 시점의 3은 4초에서 떨어진다. -> 1초 유지
- 4초 시점의 2는 떨어지지 않는다. -> 1초 유지
- 5초 시점의 3은 마지막이므로 떨어지지 않는다. -> 0초 유지
5. Code
1) 첫 코드(2022/12/27)
int[] answer = new int[prices.length];
for(int i=0 ; i<prices.length-1 ; i++){
boolean check = false;
for(int j=i+1 ; j<prices.length ; j++){
if(prices[i]>prices[j]){
answer[i] = j-i;
check = true;
break;
}
} // for j
if(!check) answer[i] = prices.length-1-i;
} // for i
answer[answer.length-1] = 0;
return answer;
'코딩테스트 풀이 > JAVA' 카테고리의 다른 글
[프로그래머스/Lv.1] 과일 장수 (0) | 2022.12.28 |
---|---|
[프로그래머스/Lv.0] k의 개수 (0) | 2022.12.27 |
[LeetCode/Easy] 1603. Design Parking System (0) | 2022.12.27 |
[LeetCode/Easy] 1572. Matrix Diagonal Sum (0) | 2022.12.27 |
[LeetCode/Easy] 1550. Three Consecutive Odds (0) | 2022.12.27 |