[백준] 초보자용 11382번 - 꼬마 정민 [정수 자료형] (java)

팥빵·2025년 3월 28일

Baekjoon

목록 보기
4/49

>>문제 바로가기<<
정답률 40.3%의 덧셈 문제이다.
그냥 단순히 숫자를 받아서 더하는건데 왜 정답률이 낮을까?
아무 생각없이 코딩을 하고 제출하면

런타임 에러(InputMisatch)

해당 글귀를 마주할것이다.








해당 문제의 포인트는
받는 숫자의 크기가 최대 10의 12승이라는 점이다.
만약 int 자료형으로 10^12 숫자를 받으면 어떻게 될까?

보편적으로 사용되는 int자료형은 최대값 2의 32승까지만 받을 수 있다.
로그를 취해 크기비교를 해보면 10^12이 2^32보다 크다는걸 알 수 있다.
따라서 int 자료형으로는 10^12을 받을 수 없다.

정수 자료형은 byte, short, int, long이 존재하는데,
간단하게 그냥 한 단계 더 높은 long 자료형을 사용하면 된다.




import java.util.Scanner;

public class Main{
	public static void main(String[] args){
    	Scanner sc = new Scanner(System.in);
        
        long A, B, C;
        A = sc.nextLong();
        B = sc.nextLong();
        C = sc.nextLong();
        
        System.out.print(A+B+C);
        }
    }







맞았습니다!!

profile
반갑습니다

0개의 댓글