https://www.acmicpc.net/problem/10952
문제
풀이
👉 Scanner 사용하는 방법
while (true)로 무한 반복하고 만약 a와 b 둘 다 0일 경우 break 문을 통해 반복문을 종료해 준다.
import java.util.Scanner;
public class Main {
public static void main(String args[]){
Scanner scan = new Scanner(System.in);
while (true) {
int a = scan.nextInt();
int b = scan.nextInt();
if (a==0 && b==0) break;
System.out.println(a+b);
}
scan.close();
}
}
👉 BufferedReader + StringTokenizer 사용하는 방법
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
while (true) {
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
if (a == 0 && b == 0) break;
sb.append(a + b).append("\n");
}
System.out.println(sb);
br.close();
}
}
👉 BufferedReader + String.charAt() 사용하는 방법
입력방법이 한 자릿수이니 공백의 위치는 고정이라는 점을 이용하여 풀 수도 있다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
while (true) {
String str = br.readLine();
int a = str.charAt(0) - 48;
int b = str.charAt(2) - 48;
if (a == 0 && b == 0) {
break;
}
sb.append(a + b).append("\n");
}
br.close();
System.out.println(sb);
}
}