728x90
이 문제에서 IDE를 사용하면 헷갈리는 부분이 생긴다.
예제 입력 1
5
1 1
2 3
3 4
9 8
5 2
예제 입력을 한번에 하고
예제 출력 1
Case #1: 2
Case #2: 5
Case #3: 7
Case #4: 17
Case #5: 7
예제 출력을 한번에 해야하나? 라는 의문이 생긴다.
정답은 아니다.
사람이 예제 입력을 입력하다보면 입력 속도보다 출력속도가 빨라 출력이 보이게 된다.
테스트 코드를 작성해 한번에 입력 값을 넣는 경우 입력 후 출력이 된다.
사실상 속도의 차이일 뿐
그래서 IDE에서 작성하는 경우
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int input = Integer.parseInt(bf.readLine());
int i = 1;
int a ,b ,d= 0;
List<Integer> ls = new ArrayList<>();
while(i <= input){
st = new StringTokenizer(bf.readLine());
a = Integer.parseInt(st.nextToken());
b = Integer.parseInt(st.nextToken());
ls.add(a+b);
i++;
}
for(int c : ls) {
d++;
System.out.println("Case #"+d+": "+c);
}
}
}
이런식으로 출력 부분을 따로 만드는 경우가 있다.
그러지 않고
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 bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int input = Integer.parseInt(bf.readLine());
int i = 1;
int a ,b = 0;
while(i <= input){
st = new StringTokenizer(bf.readLine());
a = Integer.parseInt(st.nextToken());
b = Integer.parseInt(st.nextToken());
System.out.println("Case #"+i+": "+(a+b));
i++;
}
}
}
이런식으로 입력과 출력이 같이 일어나도 된다.
728x90
'알고리즘 풀이 > 백준' 카테고리의 다른 글
Java - [백준] 1157번 단어공부 (0) | 2022.09.20 |
---|---|
Java - [백준] 3052번 나머지 (0) | 2022.09.09 |
Java - [백준] 8393번 합 (0) | 2022.08.26 |
Java - [백준]2525 오븐 시계 (0) | 2022.08.23 |
java [백준]2884번 알람 시계 (0) | 2022.08.19 |
댓글