© 2025 anveloper.dev
GitHub·LinkedIn·Contact

목차

  • 문제
  • 입력
  • 출력
  • 예제
  • 풀이
  • 코드
  • 복잡도
풀이 목록으로 돌아가기

BOJ 2729 - 이진수 덧셈

2025-07-15
BOJ
브론즈 I
python
원본 문제 보기
수학
구현
사칙연산

문제

BOJ 2729 - 이진수 덧셈

두 이진수의 합을 이진수로 출력하라. 선행 0은 제거한다.

입력

테스트 케이스 수와 각 케이스에 두 이진수가 주어진다.

출력

각 케이스마다 합을 이진수로 출력한다.

예제

입력출력
3 100 010 0 0 10 1110 0 11

풀이

Python의 int(str, 2) 함수로 이진수를 정수로 변환한 뒤, 합산하여 다시 이진수 문자열로 출력한다.

  1. 두 이진수 문자열을 int(a, 2)로 정수로 변환한다
  2. 두 정수를 더한다
  3. bin() 결과에서 0b 접두사를 제거하여 출력한다

핵심 아이디어: Python의 내장 진법 변환을 활용하면 캐리 처리 없이 간결하게 해결된다.

코드

n = int(input())
for _ in range(n):
    a,b = input().split(" ")
    a = int(a,2)
    b = int(b,2)
    print(bin(a+b).replace("0b",""))

복잡도

  • 시간: O(N)
  • 공간: O(N)