5/18 CODE KATA #16

ym j·2021년 5월 23일
0

Algorithm

목록 보기
9/9
post-thumbnail

CODE KATA

Problem

문제

prices는 배열이며, 각 요소는 매일의 주식 가격입니다. 만약 한 번만 거래할 수 있다면 = 사고 팔 수 있다면, 제일 큰 이익은 얼마일까요?
//
Input: [7,1,5,3,6,4]
Output: 5
Input: [7,1,5,3,6,4]
Output: 5
설명: 2일(가격=1)에 샀다가 5일(가격=6)에 사는 것이 6-1이라 제일 큰 수익 7-1=6 은 안 되는거 아시죠? 먼저 사야 팔 수 있습니다.
//
Input: [7,6,4,3,1]
Output: 0
Input: [7,6,4,3,1]
Output: 0
//



Code

const maxProfit = prices => {
    let 이익 = []
    for (let i = 0; prices.length > i; i++) {
        for (let j = i + 1; prices.length > j; j++) { // for문에서 j는 무조건 i보다 뒤에 있어야 하기 때문에 i +1 로 지정
            if (prices[j] > prices[i]) {
                이익.push(prices[j] - prices[i])
            }
        }
    }
    return 이익.length ? Math.max(...이익) : 0 // 이익값이 있다면 가장 큰 값을 리턴하고, 없을 시 0을 리턴한다.
};
profile
블로그를 이전하였습니다 => "https://jymini.tistory.com"

0개의 댓글

관련 채용 정보