본문 바로가기
알고리즘 문제/Leetcode

[Leetcode] 67. Add Binary

by 햄과함께 2021. 11. 4.
320x100

문제 : https://leetcode.com/problems/add-binary/


carry 플래그를 하나두고 a, b 문자열의 가장 뒤에서부터 수를 더해간다.

(a + b + carry) / 2 나머지를 정답 문자열에 추가하고

(a + b + carry) / 2 몫을 carry에 저장한다.

이를 a, b 문자열들 중 하나의 문자열이 모두 탐색할때까지 반복한다.

이 후 a, b 문자열들 중 아직 탐색하지 않은 문자들이 남았다면 탐색이 끝날때까지 위와 같이 (남은 숫자 문자 + carry) / 2 나머지를 정답에 추가해나간다.

 

시간복잡도는 O(N). N = a, b 문자열들 중 최장 길이 


소스코드 : https://github.com/fpdjsns/Algorithm/blob/master/leetcode/easy/67.%20Add%20Binary.cpp

320x100

댓글