[백준] JAVA/기본 수학 1

[백준] JAVA: 10757 큰 수 A+B

코딩하는곰곰 2021. 12. 13. 23:58

https://www.acmicpc.net/problem/10757

 

10757번: 큰 수 A+B

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

www.acmicpc.net


Solution:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
	public static void main(String[] args) throws IOException {
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine(), " ");
		StringBuilder sb = new StringBuilder();
		String A = st.nextToken();
		String B = st.nextToken();
		int[] arr = new int[A.length()>=B.length()?A.length()+1:B.length()+1];
		int j = 0;
		
		for(int i=arr.length-A.length();i<arr.length;i++) {
			arr[i]+=Character.getNumericValue(A.charAt(j));
			j++;
		}
		j=0;
		for(int i=arr.length-B.length();i<arr.length;i++) {
			arr[i]+=Character.getNumericValue(B.charAt(j));
			j++;
		}
		
		for(int i=arr.length-1;i>0;i--) {
			if(arr[i]>9) {
				arr[i]-=10;
				arr[i-1]++;
			}
		}
		
		if(arr[0]!=0) {
			sb.append(arr[0]);
		}
			
		for(int i=1;i<arr.length;i++) {
			sb.append(arr[i]);
		}
		
		System.out.print(sb);
		
		br.close();
	}
}