[백준] 1475. 방 번호

최대 1 분 소요

문제 링크

[백준] 1475. 방 번호


풀이 과정

로직은 다음과 같습니다.

  1. 방 번호를 한 자릿씩 순회한다.
    1. 현재 번호가 6 이고, 다른 세트에서 9를 안썼다면 해당 세트의 9를 뒤집어 6으로 사용한다.
    2. 현재 번호가 9 고, 다른 세트에서 6을 안썼다면 해당 세트의 6을 뒤집어 9로 사용한다.
    3. 6, 9 외의 다른 숫자라면 카드 개수를 중가시킨다.

위 작업들을 1부터 9까지의 각 카드 사용 횟수를 저장하는 배열을 통해 진행합니다.


코드

const readline = require("readline");
const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
const input = [];

rl.on("line", (line) => {
    input.push(line);
}).on("close", () => {
    let num = input[0].split("").map((e) => +e);
    let cnt = Array(10).fill(0);

    for (let n of num) {
        if (n === 6) {
            if (cnt[n] > cnt[9]) cnt[9]++;
            else cnt[n]++;
        } else if (n === 9) {
            if (cnt[n] > cnt[6]) cnt[6]++;
            else cnt[n]++;
        } else cnt[n]++;
    }

    let answer = 0;
    for (let c of cnt) answer = Math.max(answer, c);

    console.log(answer);
});

카테고리:

업데이트:

댓글남기기