본문 바로가기

Python(알고리즘,문제풀이)/프로그래머스(입문100제)

코딩테스트 입문 / 이진수 더하기 (int, bin)

728x90

📚문제

출처 : 프로그래머스 / 이진수 더하기 (https://school.programmers.co.kr/learn/courses/30/lessons/120885)

 

📝풀이

def solution(bin1,bin2):
    return bin(int(bin1,2) + int(bin2,2))[2:]

int 함수의 2번째 인자를 활용하는 문제다

이번에 처음 알게 되었다

int함수를 사용하면서 2번째 인자를 사용할 일은 거의 없었으니까

 

💡n진수 문자열 -> 정수형(10진수)

출처 : https://velog.io/@zinu/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%EC%9D%B4%EC%A7%84%EC%88%98-%EB%8D%94%ED%95%98%EA%B8%B0%ED%8C%8C%EC%9D%B4%EC%8D%ACbin-int

◾oct()함수
10진수 ➡️ 8진수 문자열
◾hex()함수
10진수 ➡️ 16진수 문자열
◾bin()함수
10진수 ➡️ 2진수 문자열

코드를 해석해보면

1. 이진수로 된 문자열 bin1, bin2를 int 함수를 통해

2진수 -> 정수형(10진수)으로 변환

 

2. 정수형(10진수)으로 변환된 bin1,bin2의 합을 

bin 함수를 사용하여 10진수의 정수를 2진수로 변환

 

3. bin함수를 사용하여 2진수로 변환 시

2진수를 뜻하는'0b'가 앞에 붙기 때문에 2번째 인덱스부터 값을 반환하면 된다

728x90