두 개의 문자열 S와 T가 있다고 가정해 봅시다. 이 문자열들은 각각 하나의 정수를 나타내며, 우리는 이 두 수를 더한 결과를 동일한 문자열 형태로 반환해야 합니다.
예를 들어 입력이 "256478921657"과 "5871257468"이라면, 256478921657 + 5871257468 = 262350179125이므로 출력은 "262350179125"가 됩니다.
문제 해결 접근 방법
파이썬은 임의 크기의 정수를 기본적으로 지원하기 때문에 이 문제는 매우 간단하게 해결할 수 있습니다. 단계별로 살펴보면 다음과 같습니다.
- 문자열 S와 T를
int()함수를 사용해 정수로 변환합니다. - ret = S + T 로 두 수를 더합니다.
- 결과를
str()함수로 문자열로 변환하여 반환합니다.
아래 구현 예제를 통해 더 잘 이해해 보겠습니다.
구현 예제
class Solution:
def solve(self, a, b):
return str(int(a) + int(b))
ob = Solution()
print(ob.solve("256478921657", "5871257468"))
입력
"256478921657", "5871257468"
출력
262350179125
코드 설명
solve 메서드는 매개변수로 받은 두 문자열 a와 b를 각각 int()로 변환한 뒤 더하고, 그 결과를 다시 str()로 감싸서 문자열 형태로 반환합니다. 파이썬은 메모리가 허용하는 한 자릿수 제한 없이 아주 큰 정수도 처리할 수 있으므로, C++나 Java처럼 오버플로우를 걱정하며 자릿수별 덧셈을 직접 구현할 필요가 없다는 점이 이 방식의 가장 큰 장점입니다.