๐ ์๊ผฌ์น
๐ ๋ฌธ์
๋ฌธ์ ์ค๋ช
๋จธ์ฑ์ด๋ค ์๊ผฌ์น ๊ฐ๊ฒ๋ 10์ธ๋ถ์ ๋จน์ผ๋ฉด ์๋ฃ์ ํ๋๋ฅผ ์๋น์ค๋ก ์ค๋๋ค. ์๊ผฌ์น๋ 1์ธ๋ถ์ 12,000์, ์๋ฃ์๋ 2,000์์
๋๋ค. ์ ์ n
๊ณผ k
๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ก์ ๋, ์๊ผฌ์น n
์ธ๋ถ๊ณผ ์๋ฃ์ k
๊ฐ๋ฅผ ๋จน์๋ค๋ฉด ์ด์ผ๋ง๋ฅผ ์ง๋ถํด์ผ ํ๋์ง return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด๋ณด์ธ์.
์ ํ์ฌํญ
- 0 <
n
< 1,000 - n / 10 โค
k
< 1,000 - ์๋น์ค๋ก ๋ฐ์ ์๋ฃ์๋ ๋ชจ๋ ๋ง์ญ๋๋ค.
์ ์ถ๋ ฅ ์
n | k | result |
---|---|---|
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์์ ๋๋ค.
โ๏ธ ํ์ด
1
2
3
4
5
6
7
8
9
function solution(n, k) {
var answer = 0;
const lambSkewers = 12_000;
const drink = 2_000;
answer = n * lambSkewers + k * drink - (Math.floor(n / 10)) * drink;
return answer;
}
์๊ผฌ์น๊ฐ 12,000์, ์๋ฃ์๊ฐ 2,000์์ด๋ฏ๋ก ๋ณ์๋ฅผ ๊ฐ๊ฐ ์ ์ธํด ์ฃผ์๋ค. ์๊ผฌ์น 10์ธ๋ถ๋น ์๋ฃ์ 1๊ฐ๊ฐ ์๋น์ค๋ก ๋๊ฐ๋ฏ๋ก,
์๊ผฌ์น ๊ฐ์ *์๊ผฌ์น ๊ฐ๊ฒฉ + ์๋ฃ์ ๊ฐ์ * ์๋ฃ์ ๊ฐ๊ฒฉ - ์๋น์ค ์๋ฃ์ ๊ฐ์ * ์๋ฃ์ ๊ฐ๊ฒฉ ์ด๋๋ค.
์๋น์ค ์๋ฃ์๋ ์๊ผฌ์น 10์ธ๋ถ๋น 1๊ฐ์ด๋ฏ๋ก n/10์ผ๋ก ์ง์ ํ๊ณ ์์์ ์๋๋ ๋ฒ๋ฆผ์ฒ๋ฆฌ ํ์๋ค.
๐ ๋ค๋ฅธ ์ฌ๋ ํ์ด
1
2
3
4
5
6
// ๋ค๋ฅธ ์ฌ๋ ํ์ด
function solution(n, k) {
k-=~~(n/10);
if (k < 0) k = 0;
return n*12000+k*2000;
}
double tilde๋ฅผ ํ์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ํผ๊ฒ์ด๋ค.
๋งค๊ฐ๋ณ์ k์ ์๋น์ค ์๋ฃ์๋ฅผ ๊ณ์ฐํ๊ณ
~~
๋ฅผ ์ฌ์ฉํ์ฌ math.floor() ๋ฉ์๋๋ ๊ฐ์ ํจ๊ณผ๋ฅผ ๋ด์๋ค. ํ์ ์๋น์ค ์๋ฃ์๊ฐ -๊ฐ ๋๋ฉด, k = 0์ผ๋ก ํ ๋นํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์๋ค.