๋ฌธ์ : https://school.programmers.co.kr/learn/courses/30/lessons/42584?language=cpp
์นดํ ๊ณ ๋ฆฌ: ์คํ/ํ
์ถ์ฒ: ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉ ํ ์คํธ ๊ณ ๋์ Kit, https://school.programmers.co.kr/learn/challenges?tab=algorithm_practice_kit
ํ๋ก๊ทธ๋๋จธ์ค ์ฌ์ดํธ์์๋ JS ์ธ์ด๋ฅผ ์ง์ํด์ฃผ์ง ์๋ ๋ฌธ์ ์์ง๋ง ๊ทธ๋ฅ JS๋ก ํ์ด๋ณด์๋ค. ๋ฌธ์ ์ ์นดํ ๊ณ ๋ฆฌ๋ ์คํ/ํ ์์ง๋ง ๊ทธ๋ฅ ๋ฐฐ์ด๋ง ๊ฐ์ง๊ณ ๋ ํ ์ ์์๋ค.
prices
๋ฐฐ์ด์ ๋ด๊ธด ๊ฐ ๊ฐ๊ฒฉ price
๋ฅผ map
ํจ์๋ฅผ ํตํด ์ํํ๋ฉด์, ์๋ก์ด ๋ฐฐ์ด์ return ํด์ค ๊ฒ์.
๊ฐ price
์ ๊ทธ price
๋ณด๋ค ๋ค index
์ ์๋ price๋ค์ for
๋ฌธ์ ๋๋ฉด์ ๋น๊ตํ๋ค. ์ฐ์ ์ด๋ฅผ 1์ด ์ฆ๊ฐ์ํค๊ณ , ๋ง์ฝ ์ฃผ์ ๊ฐ๊ฒฉ์ด ํ๋ฝํ๋ค๋ฉด ์ํ๋ฅผ ์ข
๋ฃํ๊ณ ํ๋ฝํ์ง ์์๋ค๋ฉด ๊ณ์ ์ํ๋ฅผ ๋๋ฉด์ ๋น๊ตํ๋ฉด ๋๋ค.
๋ฐ๋ก ๋ค์ index์์ ๊ฐ๊ฒฉ์ด ํ๋ฝํ๋๋ผ๋, 1์ด ๋์ ๊ฐ๊ฒฉ์ด ๋จ์ด์ง์ง ์์ ๊ฒ์ผ๋ก ๋ณด๊ธฐ ๋๋ฌธ์,
for
๋ฌธ์์ ์ฃผ์ ๊ฐ๊ฒฉ ํ๋ฝ ์ฌ๋ถ๋ฅผ ๊ฒ์ฌํ๊ธฐ ์ ์, ์ฐ์ 1์ด ์ฆ๊ฐ์ํค๋ ๊ฒ์ด ์ค์ํ๋ค.
function solution(prices) {
const answer = prices.map((price, index, arr) => {
let second = 0;
for (let i = index + 1; i < arr.length; i++) {
second+=1; // ์ผ๋จ ๋จผ์ 1์ด ์ฆ๊ฐ
if (price > arr[i]) { // ์ฃผ์ ๊ฐ๊ฒฉ์ด ํ๋ฝํ๋ค๋ฉด
break;
}
}
return second;
});
return answer;
}
solution([1, 2, 3, 2, 3]);