■ 알고리즘/백준 JAVA
[ 알고리즘 ] 백준 11021번 문제 - 자바( JAVA )
업그레이드중
2022. 5. 26. 12:19
반응형
주의사항
※ 백준에서 정해진 출력 형식을 출력해야 한다.
※ 백준 알고리즘에서는 클래스명을 Main으로 해주어야 한다.
백준 11021번 문제
백준 알고리즘의 단계별 문제 풀기
3단계 < 반복문 >
▶ 해당 문제 링크
https://www.acmicpc.net/problem/11021
11021번: A+B - 7
각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다.
www.acmicpc.net
코딩 하기
1) Scanner 사용
import java.util.Scanner;
public class Main {
public static void main( String[] args ) {
Scanner sc = new Scanner( System.in );
int a = sc.nextInt();
for( int i=1; i<=a; i++ ) {
int c = sc.nextInt();
int d = sc.nextInt();
System.out.println( "Case #" + i + ": " + ( c + d ) );
}
sc.close();
}
}
2) BufferedReader 사용
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
import java.io.IOException;
public class Main {
public static void main( String[] args ) throws IOException {
BufferedReader br = new BufferedReader( new InputStreamReader( System.in ) );
int a = Integer.parseInt( br.readLine() );
StringTokenizer st;
for( int i=1; i<=a; i++ ) {
st = new StringTokenizer( br.readLine(), " " );
System.out.println( "Case #" + i + ": "
+ ( Integer.parseInt( st.nextToken() )
+ Integer.parseInt( st.nextToken() ) ) );
}
br.close();
}
}
문제 해결
※ 주의사항
• 첫줄에 테스트 케이스 개수가 입력되고, 다음 입력부터는 공백을 기준으로 두개의 정수가 입력
• " Case #n: " 문자열 뒤에 A+B 연산 결과가 출력된다.
2) BufferedReader 사용
• readLine( ) 메서드는 한 행을 전부 읽기 때문에 공백단위로 입력해준 문자열을 분리해주어야
문제풀이가 가능하다. => 문자열 분리를 위해 StringTokenizer 클래스를 사용한다.
• nextToken( ) 은 문자열을 반환하기 때문에 Integer.parseInt( )로 int형으로 형변환을 시켜주어야 한다.
int a = Integer.parseInt( br.readLine() );
StringTokenizer st;
for( int i=1; i<=a; i++ ) {
st = new StringTokenizer( br.readLine(), " " );
System.out.println( "Case #" + i + ": "
+ ( Integer.parseInt( st.nextToken() )
+ Integer.parseInt( st.nextToken() ) ) );
}
br.close();
반응형