πAlgorithm
λ°±μ€[JS] > 9375λ² ν¨μ μ μ ν΄λΉ
devWarrior
2025. 3. 1. 14:51
π§©λ¬Έμ λ§ν¬
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());