STUDY/백준

[백준] 11382번 : 꼬마 정민- JAVA [자바] feat : 런타임에러

옐옐루 2024. 3. 14. 14:02
  • 문제

 

이 문제는 7 77 777 이렇게 숫자 3개를 공백을 두고 입력했을 경우 해당 값들을 모두 더하는 문제이다. 

핵심은 공백을 삭제하고 해당 숫자들을 더하는 것... 

입력값은 BufferReader로 받았고, StringTokenizer를 이용해 공백을 삭제 했다. 

 

  • 답안
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {

    public static void main(String arg[]) throws Exception{
        
        BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(bf.readLine());
    
        while(st.hasMoreTokens()){
            long a = Long.parseLong(st.nextToken());
            long b = Long.parseLong(st.nextToken());
            long c = Long.parseLong(st.nextToken());         
            System.out.println(a+b+c);
        }


    }
}

 

vscode로 작성한 내용

 

  • 결과

 


* 여기서 주의할 점 * 

현재 a,b,c 값을 long 타입으로 받아내고 있다.

다만 해당 값들은 1 ≤ A, B, C ≤ 10¹² 이므로 int형을 쓰면 틀리기 때문에 long형으로 받아내야한다. 

처음 int 타입으로 진행했을땐 런타입 에러가 발생했다. 

풀이를 할 때 타입도 신경써서 써주면 좋을듯 


 

반응형