
Problem ๐ป
https://school.programmers.co.kr/learn/courses/30/lessons/120830
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
๋ฌธ์ ์ค๋ช
๋จธ์ฑ์ด๋ค ์๊ผฌ์น ๊ฐ๊ฒ๋ 10์ธ๋ถ์ ๋จน์ผ๋ฉด ์๋ฃ์ ํ๋๋ฅผ ์๋น์ค๋ก ์ค๋๋ค. ์๊ผฌ์น๋ 1์ธ๋ถ์ 12,000์, ์๋ฃ์๋ 2,000์์ ๋๋ค. ์ ์ n๊ณผ k๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ก์ ๋, ์๊ผฌ์น n์ธ๋ถ๊ณผ ์๋ฃ์ k๊ฐ๋ฅผ ๋จน์๋ค๋ฉด ์ด์ผ๋ง๋ฅผ ์ง๋ถํด์ผ ํ๋์ง return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด๋ณด์ธ์.
์ ํ์ฌํญ
- 0 < n < 1,000
- n / 10 ≤ k < 1,000
- ์๋น์ค๋ก ๋ฐ์ ์๋ฃ์๋ ๋ชจ๋ ๋ง์ญ๋๋ค.
์ ์ถ๋ ฅ ์nkresult
| 10 | 3 | 124,000 |
| 64 | 6 | 768,000 |
์ ์ถ๋ ฅ ์ ์ค๋ช
์ ์ถ๋ ฅ ์ #1
- 10์ธ๋ถ์ ์์ผ ์๋น์ค๋ก ์๋ฃ์๋ฅผ ํ๋ ๋ฐ์ ์ด 10 * 12000 + 3 * 2000 - 1 * 2000 = 124,000์์ ๋๋ค.
์ ์ถ๋ ฅ ์ #2
- 64์ธ๋ถ์ ์์ผ ์๋น์ค๋ก ์๋ฃ์๋ฅผ 6๊ฐ ๋ฐ์ ์ด 64 * 12000 + 6 * 2000 - 6 * 2000 =768,000์์ ๋๋ค.
Approach 1 โ - ๋์ ์ด๊ธฐ ์ฝ๋
class Solution {
public int solution(int n, int k) {
int totalPrice = n * 12000 + k * 2000;
int sale = n / 10;
int answer = totalPrice - sale;
return answer;
}
}
Approach 2 โญ - ๋ณด์์
๋ฌธ์ ๋ sale ๋ณ์๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ๊ณ์ฐํ์ง ์์ ๊ฒ์ด๋ค.
ํ์ฌ sale ๋ณ์๋ ์๋น์ค๋ก ์ ๊ณต๋ ์๋ฃ์์ ๊ฐ์(= n / 10)๋ง ๊ณ์ฐํ๊ณ ,
์ด๋ฅผ ์๋ฃ์ ๊ฐ๊ฒฉ๊ณผ ์ฐ๊ณํ์ง ์์๋ค.
๋ฐ๋ผ์ ์ต์ข ํ ์ธ ๊ธ์ก์ด ์๋ชป ๊ณ์ฐ๋๋ค.
Solution ๐ก
class Solution {
public int solution(int n, int k) {
int totalPrice = n * 12000 + k * 2000;
int freeDrinks = n / 10;
int discount = freeDrinks * 2000;
return totalPrice - discount;
}
}
์ฝ๋ ์ค๋ช :
1. ์๊ผฌ์น์ ์๋ฃ์ ๊ฐ๊ฒฉ ๊ณ์ฐ:
• n * 12000: ์๊ผฌ์น์ ์ด ๋น์ฉ.
• k * 2000: ์๋ฃ์์ ์ด ๋น์ฉ.
์ด๋ฅผ ํฉ์ฐํ์ฌ totalPrice๋ฅผ ๊ณ์ฐํ๋ค.
2. ์๋น์ค ์๋ฃ์ ๊ณ์ฐ:
• n / 10์ ํตํด ์๊ผฌ์น 10์ธ๋ถ๋น 1๊ฐ์ ์๋น์ค ์๋ฃ์๋ฅผ ๊ณ์ฐํ๋ค.
3. ํ ์ธ ๊ธ์ก ๊ณ์ฐ:
• ์๋น์ค๋ก ๋ฐ์ ์๋ฃ์์ ์ด ๊ฐ๊ฒฉ์ freeDrinks * 2000์ด๋ค.
4. ์ต์ข ๊ณ์ฐ:
• ์ด ๊ธ์ก์์ ์๋น์ค ์๋ฃ์์ ๊ธ์ก(discount)์ ์ฐจ๊ฐํ๋ค.
Reference ๐
'๐ฐ๐ท ํ๊ตญ์ด (Korean) > Java Algorithm Coding Test' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [Java] ์ ๊ณฑ์ ํ๋ณํ๊ธฐ (2) | 2024.12.29 |
|---|---|
| [Java] ํน์ ๋ฌธ์ ์ ๊ฑฐํ๊ธฐ (0) | 2024.12.29 |
| [Java] n๋ณด๋ค ์์ ์ง์๋ผ๋ฆฌ ๋ชจ๋ ๋ํ๊ธฐ (0) | 2024.12.26 |
| [Java] ๋งค ์๊ฐ๋ง๋ค ๋๋ฐฐ๋ก ๋ง๋ค๊ธฐ (0) | 2024.12.26 |
| [Java] ์กฐ๊ฑด๋ฌธ ๋ฌธ๋ฒ ํ์คํ ์์๋๊ธฐ. (์กฐ๊ฑด์ด ์ฌ๋ฌ ๊ฐ์ผ ๋) (0) | 2024.12.25 |