https://www.acmicpc.net/problem/1000
1000번: A+B
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
www.acmicpc.net
백준 온라인 저지(BOJ)의 첫 번째 단계인 "입출력과 사칙연산"의 다섯 번째 문제이다.
두 수를 입력받아 덧셈연산을 하고 출력하기까지 수행하는 문제이다.
추가로 문제에서 두 수 A와 B를 제시하는 방법에 대해 얘기하겠다,
이 문제에서는 두 수를 띄어쓰기로 나누어서 제시하고 있다.
그러기 때문에 우리는 띄어쓰기를 기준으로 두 수를 잘라낼 수 있어야 한다.
이는 StringTokenizer를 이용하는 방법과 split을 이용하는 방법이 있다.
하지만 StringTokenizer가 대부분의 면에서 더 유용하기 때문에 앞으로는 StringTokenizer를 사용하도록 하겠다.
필자는 이 문제풀이 방법으로 두 가지 방법으로 풀어보았다.
- 첫 번째 방법 - Scanner를 이용하여 수를 입력받기 + StringTokenizer
import java.util.Scanner;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
StringTokenizer st = new StringTokenizer(in.nextLine());
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
System.out.println(A+B);
}
}
StringTokenizer를 이용할때는 주의해야할 점이 있다.
StringTokenizer는 String으로 자르기 때문에 이를 int형으로 다시 바꿔줘야한다.
따라서 Integer.parseInt()를 이용해 int형으로 바꿔주었다.
- 두 번째 방법 - BufferedReader를 통해 수를 입력받기 + StringTokenizer
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());
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
System.out.println(A+B);
}
}
앞선 첫 번째 방법과 같은 이유로 StringTokenizer의 토큰을 받을 때는 int형으로 바꿔줘야한다.
- 정리
띄어쓰기와 같은 토큰을 이용해 문자열을 나누는 방법(split, StringTokenizer)
입력받는 방법(Scanner, BufferedReader)
에 대해 알 수 있었다.
'[JAVA] > 자바[JAVA] 백준' 카테고리의 다른 글
BOJ(백준 온라인 저지) 10998번 - 단계별로 풀어보기 with 자바[JAVA] (0) | 2022.01.04 |
---|---|
BOJ(백준 온라인 저지) 1001번 - 단계별로 풀어보기 with 자바[JAVA] (0) | 2022.01.04 |
BOJ(백준 온라인 저지) 10718번 - 단계별로 풀어보기 with 자바[JAVA] (0) | 2022.01.04 |
BOJ(백준 온라인 저지) 2557번 - 단계별로 풀어보기 with 자바[JAVA] (0) | 2022.01.04 |
자바[JAVA] - Chapter 2. 상수와 형 변환 (0) | 2021.12.28 |