240426
1
๋ฌธ์ : ๋ถ์กฑํ ๊ธ์ก ๊ณ์ฐํ๊ธฐ ๋์ด๋ : Lv.0 ์ค๋ช :
์๋ก ์๊ธด ๋์ด๊ธฐ๊ตฌ๋ ์ธ๊ธฐ๊ฐ ๋งค์ฐ ๋ง์ ์ค์ด ๋์ด์ง ์์ต๋๋ค. ์ด ๋์ด๊ธฐ๊ตฌ์ ์๋ ์ด์ฉ๋ฃ๋ price์ ์ธ๋ฐ, ๋์ด๊ธฐ๊ตฌ๋ฅผ N ๋ฒ ์งธ ์ด์ฉํ๋ค๋ฉด ์๋ ์ด์ฉ๋ฃ์ N๋ฐฐ๋ฅผ ๋ฐ๊ธฐ๋ก ํ์์ต๋๋ค. ์ฆ, ์ฒ์ ์ด์ฉ๋ฃ๊ฐ 100์ด์๋ค๋ฉด 2๋ฒ์งธ์๋ 200, 3๋ฒ์งธ์๋ 300์ผ๋ก ์๊ธ์ด ์ธ์๋ฉ๋๋ค. ๋์ด๊ธฐ๊ตฌ๋ฅผ count๋ฒ ํ๊ฒ ๋๋ฉด ํ์ฌ ์์ ์ด ๊ฐ์ง๊ณ ์๋ ๊ธ์ก์์ ์ผ๋ง๊ฐ ๋ชจ์๋ผ๋์ง๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํ์ธ์. ๋จ, ๊ธ์ก์ด ๋ถ์กฑํ์ง ์์ผ๋ฉด 0์ return ํ์ธ์.
์ ํ์ฌํญ
๋์ด๊ธฐ๊ตฌ์ ์ด์ฉ๋ฃ price : 1 โค price โค 2,500, price๋ ์์ฐ์
์ฒ์ ๊ฐ์ง๊ณ ์๋ ๊ธ์ก money : 1 โค money โค 1,000,000,000, money๋ ์์ฐ์
๋์ด๊ธฐ๊ตฌ์ ์ด์ฉ ํ์ count : 1 โค count โค 2,500, count๋ ์์ฐ์
ํ์ด
function solution(price, money, count) {
let sumCount = 0
let sumArray = []
for(let i = 1; i <= count; i++) {
sumCount += price
sumArray.push(sumCount)
}
const sum = sumArray.reduce((acc, cur)=> {
return acc + cur
}, 0)
return money > sum ? 0 : sum - money
}
๐ ๋ค๋ฅธ ์ฌ๋ ํ์ด
function solution(price, money, count) {
const tmp = price * count * (count + 1) / 2 - money;
return tmp > 0 ? tmp : 0;
}
function solution(price, money, count) {
let answer = 0;
for (let i = 1; i <= count; i++) {
answer += price * i;
}
return answer > money ? answer - money : 0;
}
Last updated