개발자 톡

연습문제 톡 [21년 재직자 대회 예선] 전광판

JS

등록일
2025-02-08 06:14:24
조회수
46
작성자
vavoya6324
const fs = require('fs');

const input = fs.readFileSync(0, 'utf8').trim().split('\n').slice(1)


/*
 *          1 0 2
 *          1   2
 *          3 3 3
 *          4   5
 *          4 6 5
 */
const LED = {
    0: 0b1110111,
    1: 0b100100,
    2: 0b1011101,
    3: 0b1101101,
    4: 0b101110,
    5: 0b1101011,
    6: 0b1111011,
    7: 0b100111,
    8: 0b1111111,
    9: 0b1101111,
    x: 0b0000000
};


const output = []
input.forEach(numbers => {
    const [numberA, numberB] = numbers.split(' ').map(number => number.padStart(5, 'x'));
    let count = 0
    for (let i = 0; i < 5; i++) {
        const LEDA = LED[numberA[i]];
        const LEDB = LED[numberB[i]];
        let gap = LEDA ^ LEDB
        while (gap > 0) {
            count += gap & 1
            gap >>= 1
        }
    }
    output.push(count);
})
console.log(output.join('\n'))


#[21년_재직자_대회_예선]_전광판

이 카테고리의 톡 더보기