1. 문자열을 입력 받는다.
2. A와 B를 연결한 값, C와 D를 연결할 값을 저장할 StringBuilder를 생성한다.
2. A B C D는 공백으로 나누어져 입력되므로,
StringTokenizer를 사용해 쪼갠다.
3. StringBuilder.append()를 사용해 A와 B, C와 D를 이어붙인다.
4. 두 StringBuilder에 저장된 값을 Long으로 캐스팅한 후 더하고 출력해준다.
아무리 봐도 문제가 없어보이는데 자꾸 NumberFormat 런타임에러가 떠서 당황스러웠다.
다시 문제를 잘 읽어보니 A B C D 각각이 1,000,000까지도 가능하기 때문에
int로는 감당할 수 없는 값이 입력될 수도 있는 거였다.
문제를 꼼꼼히 읽는 게 참 중요한 것 같다.
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
StringBuilder AB = new StringBuilder();
StringBuilder CD = new StringBuilder();
AB.append(st.nextToken()).append(st.nextToken());
CD.append(st.nextToken()).append(st.nextToken());
System.out.println(Long.parseLong(AB.toString())+Long.parseLong(CD.toString()));
}
}
'Algorithm > [BOJ] - JAVA' 카테고리의 다른 글
[백준] 11728 : 배열 합치기 JAVA 풀이 (0) | 2022.09.08 |
---|---|
[백준] 1476 : 날짜 계산 JAVA 풀이 (0) | 2022.09.08 |
[백준] 11655 : ROT13 JAVA 풀이 (0) | 2022.09.05 |
[백준] 2743 : 단어 길이 재기 JAVA 풀이 (0) | 2022.09.05 |
[백준] 10820 : 문자열 분석 JAVA 풀이 (0) | 2022.09.05 |