๐งฉ๋ฌธ์ ๋งํฌ
https://www.acmicpc.net/problem/9375
๐ฅํ์ด
์ฒ์์ ์กฐํฉ์ ์๊ฐํด์ ์ ๊ทผํ๋๋ฐ ์๊ฐํด๋ณด๋ ๊ทธ๋ด ํ์๊ฐ ์์๋ค. ๋ง์ฝ ์์๊ฐ 5๊ฐ, ํ์๊ฐ 5๊ฐ ์๋ค๋ฉด ์์๋ฅผ ์ ํํ ์ ์๋๋ฐฉ๋ฒ์ 6๊ฐ์ง ( ์ ์ง ์๋ ๊ฒฝ์ฐ 1๊ฐ์ง + ์์๋ฅผ ์ ๋ ๊ฒฝ์ฐ 5๊ฐ์ง ) ,ํ์๋ฅผ ์ ๋ ๋ฐฉ๋ฒ์ 6๊ฐ์ง ( ์ ์ง์๋ ๊ฒฝ์ฐ + ํ์๋ฅผ ์ ๋ ๊ฒฝ์ฐ 5๊ฐ์ง ) ์ด๋ค. ๋ฐ๋ผ์ 6*6 -1 ๋ฅผ ๊ณ์ฐํ๋ฉด ์ท์ ์ ์ง์๋ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ ์ท์ ์ ๋ ๊ฒฝ์ฐ๊ฐ ๋์จ๋ค. ์ด๋ฐ์์ผ๋ก ๊ณ์ฐ์ ํ๋ฉด ์ฝ๊ฒ ๊ตฌํ ์ ์๋ค.
let fs = require("fs");
let input = fs.readFileSync("/dev/stdin").toString().trim().split("\n");
let answer = "";
for (let i = 1; i < input.length; ) {
let clothCnt = +input[i];
let obj = {};
for (let j = 1; j <= clothCnt; ++j) {
let [cloth, type] = input[i + j].split(" ");
if (obj[type] === undefined) {
obj[type] = 1;
} else {
++obj[type];
}
}
let total = 1;
Object.values(obj).forEach((v) => {
total = total * (v + 1);
});
total -= 1;
answer += `${total}\n`;
i += clothCnt + 1;
}
console.log(answer.toString());
'๐Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค[JS] > 11403๋ฒ ๊ฒฝ๋ก ์ฐพ๊ธฐ (0) | 2025.03.03 |
---|---|
๋ฐฑ์ค[JS] > 7568 ๋ฉ์น (0) | 2025.03.01 |
ํ๋ก๊ทธ๋๋จธ์ค[JS] > ํ๋ฐฐ ์์ ๊บผ๋ด๊ธฐ (0) | 2025.02.25 |
ํ๋ก๊ทธ๋๋จธ์ค[JS] > ์ ์ฐ๊ทผ๋ฌด์ (0) | 2025.02.23 |
ํ๋ก๊ทธ๋๋จธ์ค[JS] > ์์ ๋ฒ์ฃ (0) | 2025.02.21 |