최대 1 분 소요

[백준 5554번] 심부름 가는 길

이 문제는 2가지 방식으로 문제를 풀어보았다. 첫 번째는 Scanner를 사용하여서 입력값을 받는 경우, 두 번째는 BufferedReader를 사용하여서 입력값을 받는 경우.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package _2월_1주차;
 
import java.util.Scanner;
 
public class 백준_손수경_정답_5554 {
 
    public static void main(String[] args) {
        
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c = sc.nextInt();
        int d = sc.nextInt();
        int total = a + b + c + d;
        int min = (int)Math.floor(total / (double)60);
        int sec = total % 60;
        System.out.println(min);
        System.out.println(sec);
        
    }
 
}
 
cs


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
package _2월_1주차;
 
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
 
public class buffered사용_5554 {
 
    public static void main(String[] args) throws IOException {
        
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        int a = Integer.parseInt(br.readLine());
        int b = Integer.parseInt(br.readLine());
        int c = Integer.parseInt(br.readLine());
        int d = Integer.parseInt(br.readLine());
        int total = a + b + c + d;
        int min = (int)Math.floor(total / (double)60);
        int sec = total % 60;
        bw.write(min + "\n" + sec);
        bw.close();
    }
 
}
 
cs

여기서는 입력값이 모두 Enter를 기준으로 나뉘었기 때문에 StringTokenizer를 사용할 필요는 없었다.

댓글남기기