바위 뚫는중

[소프티어] Lv2. 전광판 본문

Algorithms/소프티어

[소프티어] Lv2. 전광판

devran 2023. 11. 6. 17:13
반응형

2️⃣ 전광판

https://softeer.ai/practice/6268

💡 아이디어

전광판 7개의 스위치를 시계방향으로 생각하여 모든 숫자별로 스위치 on = 1 off = 0 으로 두고 전과 후가 다르면 카운트를 증가시켜주는 식으로 풀었다.

📝 풀이

정답 풀이

dict로 각각의 전광판에 필요한 수를 1과 0으로 (on 1 off 0)두고

정말 열심히 풀었으나, 표현해야 하는 실제 0과 애시당초 비어있는 0을 어떻게 구분해야하지? 라는 늪에 빠져 문제를 끝까지 해결하지 못했다.

구글링을 통해 알아보니 len을 이용하여 숫자가 나오기 전 앞은 모두 비어있도록 설정하여 문제를 풀면됐다

import sys
input = sys.stdin.readline 

info = {
    
    '0' : '1110111',
    '1' : '0010010',
    '2' : '1011101',
    '3' : '1011011',
    '4' : '0111010', 
    '5' : '1101011',
    '6' : '1101111',
    '7' : '1110010',
    '8' : '1111111',
    '9' : '1111011',
    ' ' : '0000000'
}

t = int(input())
for _ in range(t):
    a, b = map(str,input().split())
    
    a_empty, b_empty = 5-len(a), 5-len(b)
    a = ' ' * a_empty + a
    b = ' ' * b_empty + b

    result = 0

    for i in range(5):
        for j in range(7):
            if(info[a[i]][j] != info[b[i]][j]):
                result+=1
                
    print(result)

❗느낀점

이렇게 하면 될 것 같은데, 이걸 대체 어떻게 구현하지? 를 구현하는 게 핵심이다

어쩌면 코딩테스트에서 보고 싶은 게 이런거 아닐까 싶다.

반응형

'Algorithms > 소프티어' 카테고리의 다른 글

[소프티어] Lv2. 지도 자동 구축  (0) 2023.11.21
[소프티어] Lv2. 금고털이  (0) 2023.11.21
[소프티어] Lv2. GBC  (0) 2023.11.21
[소프티어] Lv3. 성적평균  (0) 2023.11.03
[소프티어] Lv2. 바이러스  (0) 2023.11.03