CodingTest/Java
Lv.1 : ๋ถ์กฑํ ๊ธ์ก ๊ณ์ฐํ๊ธฐ
Soom_1n
2022. 7. 30. 16:22
ํ๋ก๊ทธ๋๋จธ์ค
์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.
programmers.co.kr
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- 1๋ถํฐ count๊น์ง ์ฆ๊ฐ์์ผ๊ฐ๋ฉฐ price๋ฅผ ๊ณฑํ ์ด ํฉ์ด money๋ฅผ ๋๋์ง ์๋๋์ง ํ๋ณํ๋ค.
๐ธ ์ฝ๋ ๐ธ
class Solution {
public long solution(int price, int money, int count) {
long answer = money;
for(int i = 1; i <= count; i++)
answer -= price*i;
if(answer < 0) return -answer;
else return 0;
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- answer๋ -2,500*1 ๋ถํฐ -2,500*2,500๊น์ง ๋ํ ์ ์์ผ๋ฏ๋ก long์ผ๋ก ์๋ฃํ์ ์ ํํ๋ค.
๐ธ end ๐ธ
- ๊ฐ๋จํ ํ์๋ค.
- ๋ค๋ฅธ ํ์ด๋ฅผ ๋ณด๋, ๋ด ์ฝ๋์ if๋ฌธ๋ณด๋ค ์ข์๋ ๋ฐฉ๋ฒ์ ์ผํญ์ฐ์ฐ์์ max์ฐ์ฐ์ ์ฌ์ฉ์ด์๋ค.
- ๊ฐ์ฐ์ค ๋ฒ์น(N*(N+1)*0.5) ์ผ๋ก ๊น๋ํ ํ์ด๋ธ ๊ฒ๋ ์ข์ ๋ฐฉ๋ฒ์ธ ๊ฒ ๊ฐ๋ค.
class Solution {
public long solution(long price, long money, long count) {
return Math.max(price * (count * (count + 1) / 2) - money, 0);
}
}
728x90