-
[4900] 7 더하기 (Python)[Python] 알고리즘/Silver 2021. 12. 1. 22:10
[문제]
https://www.acmicpc.net/problem/4900
4900번: 7 더하기
입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 A+B=꼴이며, A와 B는 두 수 a와 b를 7 세그먼트 디스플레이 상에서의 코드로 표현한 값이다. (0 < a,b < a+b < 1,000,000,000) 마지막
www.acmicpc.net
알고리즘 분류는 구현, 문자열 입니다.
아래의 힌트를 참고하여 코드를 구하고, 3자리씩 끊어서 숫자를 알아내면 되는 문제입니다.
[코드]
import sys code = { "063": 0, "010": 1, "093": 2, "079": 3, "106": 4, "103": 5, "119": 6, "011": 7, "127": 8, "107": 9, } code_rev = {v: k for k, v in code.items()} def num(m): n = "" for i in range(0, len(m), 3): n += str(code[m[i : i + 3]]) return int(n) while True: N = sys.stdin.readline().rstrip() if N == "BYE": break sp = N.split("+") A = sp[0] B = sp[1][: len(sp[1]) - 1] A_num = num(A) B_num = num(B) C_num = str(A_num + B_num) C = "" for i in C_num: C += code_rev[int(i)] print(N + C)
'[Python] 알고리즘 > Silver' 카테고리의 다른 글
[1021] 회전하는 큐 (Python) (0) 2021.12.21 [1543] 문서 검색 (Python) (0) 2021.12.02 [21919] 소수 최소 공배수 (Python) (0) 2021.11.30 [6616] 문자열 암호화 (Python) (0) 2021.11.29 [1706] 크로스워드 (Python) (0) 2021.11.25