Algorithm for Coding Test/Swea

SWEA D4 4366 정식이의 은행업무

달린다 동구리 2021. 10. 10. 21:52
728x90
반응형

이 코드는 Python으로 작성했습니다.

T = int(input())
for tc in range(1, T + 1):
    binary = list(input())
    ternary = list(input())
    # 다루기 편하도록 모두 str 형식으로 받아오기

    check = 0  # 이중 for문 탈출 parameter
    for i in range(len(binary) * 2):  # 이진법 0,1 스위칭 되므로 길이 *2 만큼 반복
        re_binary = binary[:]
        re_binary[i // 2] = str(i % 2)
        a = ''.join(re_binary)
        for j in range(len(ternary) * 3):  # 삼진법 0,1,2 스위칭 길이 *3 만큼 반복
            re_ternary = ternary[:]
            re_ternary[j // 3] = str(j % 3)
            b = ''.join(re_ternary)
            if int(a, 2) == int(b, 3):
                # int 를 통해 2진법, 3진법을 10진수로 변환
                print('#{} {}'.format(tc, int(a, 2)))
                check = 1
                break
        if check == 1:
            break

 

문제 출처 : SW Expert Academy

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

728x90
반응형