inblog logo
|
jjack1
    Java프로그래머스코딩테스트

    [프로그래머스] 107. 두 수의 합

    최재원's avatar
    최재원
    Jul 18, 2026
    [프로그래머스] 107. 두 수의 합
    💡

    문제 설명

    0 이상의 두 정수가 문자열 a, b로 주어질 때, a + b의 값을 문자열로 return 하는 solution 함수를 작성해 주세요.
    💡

    제한사항

    • 1 ≤ a의 길이 ≤ 100,000
    • 1 ≤ b의 길이 ≤ 100,000
    • a와 b는 숫자로만 이루어져 있습니다.
    • a와 b는 정수 0이 아니라면 0으로 시작하지 않습니다.

    입출력 예

    a
    b
    result
    "582"
    "734"
    "1316"
    "18446744073709551615"
    "287346502836570928366"
    "305793246910280479981"
    "0"
    "0"
    "0"

    입출력 예 설명

    입출력 예 #1
    • 예제 1번의 a, b는 각각 582, 734이고 582 + 734 = 1316입니다. 따라서 "1316"을 return 합니다.
    입출력 예 #2
    • 예제 2번의 a, b는 각각 18446744073709551615, 287346502836570928366이고 18446744073709551615 + 287346502836570928366 = 305793246910280479981입니다. 따라서 "305793246910280479981"을 return 합니다.
    입출력 예 #3
    • 예제 3번의 a, b는 각각 0, 0이고 0 + 0 = 0입니다. 따라서 "0"을 return 합니다.
     

    코드

    import java.math.BigInteger; // 1. 상단에 import 필요 class Solution { public String solution(String a, String b) { // 2. BigInteger 객체 생성 (문자열을 그대로 넣습니다) BigInteger numA = new BigInteger(a); BigInteger numB = new BigInteger(b); // 3. 더하기 연산 (산술 연산자 '+' 대신 .add() 메서드 사용) BigInteger sum = numA.add(numB); // 4. 결과를 다시 문자열로 변환하여 반환 return sum.toString(); } }
    • int: 약 10자리 숫자까지 저장 가능 (최대값 약 21억)
    • long: 약 19자리 숫자까지 저장 가능 (최대값 약 9경)
    • 문제의 조건: 100,000자리 숫자
    notion image
     
    Share article

    jjack1

    RSS·Powered by Inblog