์์ฅ ๋ฌธ์ ํ์ด
๋ฌธ์
๋ฌธ์ ์ด์ด๋ณด๊ธฐ
์คํ์ด๋ค์ ๋งค์ผ ๋ค๋ฅธ ์ท์ ์กฐํฉํ์ฌ ์ ์ด ์์ ์ ์์ฅํฉ๋๋ค.
์๋ฅผ ๋ค์ด ์คํ์ด๊ฐ ๊ฐ์ง ์ท์ด ์๋์ ๊ฐ๊ณ ์ค๋ ์คํ์ด๊ฐ ๋๊ทธ๋ ์๊ฒฝ, ๊ธด ์ฝํธ, ํ๋์ ํฐ์ ์ธ ๋ฅผ ์ ์๋ค๋ฉด ๋ค์๋ ์ ์ฒญ๋ฐ์ง๋ฅผ ์ถ๊ฐ๋ก ์ ๊ฑฐ๋ ๋๊ทธ๋ ์๊ฒฝ ๋์ ๊ฒ์ ์ ๊ธ๋ผ์ค๋ฅผ ์ฐฉ์ฉํ๊ฑฐ๋ ํด์ผ ํฉ๋๋ค.
| ์ข ๋ฅ | ์ด๋ฆ |
|---|---|
| ์ผ๊ตด | ๋๊ทธ๋ ์๊ฒฝ, ๊ฒ์ ์ ๊ธ๋ผ์ค |
| ์์ | ํ๋์ ํฐ์ ์ธ |
| ํ์ | ์ฒญ๋ฐ์ง |
| ๊ฒ์ท | ๊ธด ์ฝํธ |
์คํ์ด๊ฐ ๊ฐ์ง ์์๋ค์ด ๋ด๊ธด 2์ฐจ์ ๋ฐฐ์ด clothes๊ฐ ์ฃผ์ด์ง ๋ ์๋ก ๋ค๋ฅธ ์ท์ ์กฐํฉ์ ์๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ์ฌํญ
- clothes์ ๊ฐ ํ์ [์์์ ์ด๋ฆ, ์์์ ์ข ๋ฅ]๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
- ์คํ์ด๊ฐ ๊ฐ์ง ์์์ ์๋ 1๊ฐ ์ด์ 30๊ฐ ์ดํ์ ๋๋ค.
- ๊ฐ์ ์ด๋ฆ์ ๊ฐ์ง ์์์ ์กด์ฌํ์ง ์์ต๋๋ค.
- clothes์ ๋ชจ๋ ์์๋ ๋ฌธ์์ด๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
- ๋ชจ๋ ๋ฌธ์์ด์ ๊ธธ์ด๋ 1 ์ด์ 20 ์ดํ์ธ ์์ฐ์์ด๊ณ ์ํ๋ฒณ ์๋ฌธ์ ๋๋ โ_โ ๋ก๋ง ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
- ์คํ์ด๋ ํ๋ฃจ์ ์ต์ ํ ๊ฐ์ ์์์ ์ ์ต๋๋ค.
์ ์ถ๋ ฅ ์
| clothes | return |
|---|---|
| [[yellow_hat, headgear], [blue_sunglasses, eyewear], [green_turban, headgear]] | 5 |
| [[crow_mask, face], [blue_sunglasses, face], [smoky_makeup, face]] | 3 |
์ ์ถ๋ ฅ ์ ์ค๋ช
-
์์ #1
headgear์ ํด๋นํ๋ ์์์ด yellowhat, greenturban์ด๊ณ eyewear์ ํด๋นํ๋ ์์์ด blue_sunglasses์ด๋ฏ๋ก ์๋์ ๊ฐ์ด 5๊ฐ์ ์กฐํฉ์ด ๊ฐ๋ฅํฉ๋๋ค.- yellow_hat
- blue_sunglasses
- green_turban
- yellow_hat + blue_sunglasses
- green_turban + blue_sunglasses
-
์์ #2
face์ ํด๋นํ๋ ์์์ด crowmask, bluesunglasses, smoky_makeup์ด๋ฏ๋ก ์๋์ ๊ฐ์ด 3๊ฐ์ ์กฐํฉ์ด ๊ฐ๋ฅํฉ๋๋ค.- crow_mask
- blue_sunglasses
- smoky_makeup
ํ์ด
function solution(clothes) {
let answer = 1;
let obj = {};
for (let i = 0; i < clothes.length; i++) {
// ์ท์ ์ข
๋ฅ๋ณ๋ก ์
์ ์ ์๋ ๊ฐฏ์ ์นด์ดํธ
// ์ด๊ธฐ๊ฐ์ 1, ์ ์
์์ ๊ฒฝ์ฐ๋ ์๊ฐํด์ผ ํจ
obj[clothes[i][1]] = (obj[clothes[i][1]] || 1) + 1;
}
const objArray = Object.keys(obj);
for (let j = 0; j < objArray.length; j++) {
answer *= obj[objArray[j]];
}
// ์ ๋ถ๋ค ์ ์
์์ ๊ฒฝ์ฐ 1์ ๋นผ์ค
return answer - 1;
}
๋ฌธ์ ์ฃผ์ ์ธ ํด์์ ๋ง๊ฒ ๊ฐ ํค ๋ณ๋ก ์นด์ดํธ๋ฅผ ํ ๋ค ๊ณ์ฐ์ ํด์ฃผ๋ฉด ๋๋ค. ์ด๋ฐ ๋ฌธ์ ๊ฐ์ ๊ฒฝ์ฐ๋ ๋ชจ๋ ์ ์์ ๋, ์์ ์์ ๋ ๋ฑ์ ์์ธ ์ํฉ๋ค์ด ์๊ธธ ์๊ฐ ์๋๋ฐ ๋ฌธ์ ์ ์ ํ์ฌํญ๋ค์ ๊ผผ๊ผผํ ์ ์ฝ์ด๋ณด๋๋ก ํด์ผ๊ฒ ๋ค.