BEAKJOON

백준(10757번 큰 수 A+B)풀이 C++

Shin_jisoo 2021. 1. 13. 00:23
728x90

www.acmicpc.net/problem/10757

 

10757번: 큰 수 A+B

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net

1) 주석 없는 VERSION

#include <stdio.h>
#include <iostream>
#include <string>

using namespace std;

int main() {
    string a, b, result;
    cin >> a >> b;
    if (a.size() > b.size())
    {
        string c;
        for (int i = 0; i < a.size() - b.size(); i++)
            c += '0';
        b = c + b;
    }
    else
    {
        string c;
        for (int i = 0; i < b.size() - a.size(); i++)
            c += '0';
        a = c + a;
    } 

    int carry = 0;
    while (a.size() != 0 && b.size() != 0)
    {
        int aback = a.back() - '0'; 
        int bback = b.back() - '0'; 
        int remain = (carry + aback + bback) % 10; 
        carry = (carry + aback + bback) / 10; 
        result = (char)(remain + '0') + result; 
        a.pop_back();
        b.pop_back();
    }
    if (carry) 
        result = (char)(carry + '0') + result;
    cout << result << endl;
    return 0;

}

 

❌주의 사항❌

int 와 같은 형으로 계산하지 못하므로, 문자열로 처리해줘야합니다.