๋ฌธ์ ์ค๋ช
์๋ก ์๊ธด ๋์ด๊ธฐ๊ตฌ๋ ์ธ๊ธฐ๊ฐ ๋งค์ฐ ๋ง์ ์ค์ด ๋์ด์ง ์์ต๋๋ค.
์ด ๋์ด๊ธฐ๊ตฌ์ ์๋ ์ด์ฉ๋ฃ๋ 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๋ ์์ฐ์
์ ์ถ๋ ฅ ์
์ ์ถ๋ ฅ ์ ์ค๋ช
์
์ถ๋ ฅ ์ #1
์ด์ฉ๊ธ์ก์ด 3์ธ ๋์ด๊ธฐ๊ตฌ๋ฅผ 4๋ฒ ํ๊ณ ์ถ์ ๊ณ ๊ฐ์ด ํ์ฌ ๊ฐ์ง ๊ธ์ก์ด 20์ด๋ผ๋ฉด, ์ด ํ์ํ ๋์ด๊ธฐ๊ตฌ์ ์ด์ฉ ๊ธ์ก์ 30 (= 3+6+9+12) ์ด ๋์ด 10๋งํผ ๋ถ์กฑํ๋ฏ๋ก 10์ return ํฉ๋๋ค.
public long solution(int price, int money, int count) {
long totalPrice = 0;
for (int n = 1; n <= count; n++) {
totalPrice += n * price;
}
return money - totalPrice > 0 ? 0 : -(money - totalPrice);
}