이번 문제도 for문을 사용하는 문제입니다.

 

앞선 문제와 큰 차이가 없기 때문에 이번에는 Scanner와 Buffer를 4가지 방식으로 작성해보겠습니다.

백준 2741 - 입력 : Scanner / 출력 : Scanner

 

import java.util.*;
class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        
        int n = sc.nextInt(); // 입력 - scanner
        for(int i = 1; i <=n; i++){
            System.out.println(i); // 출력 - scanner
        }
        sc.close();
    }
}

 

백준 2741 - 입력 : Scanner / 출력 : BufferedWriter

 

import java.util.*;
import java.io.*;
class Main{
    public static void main(String[] args) throws IOException {
        Scanner sc = new Scanner(System.in);
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        
        int n = sc.nextInt(); // 입력 - scanner
        for(int i = 1; i <=n; i++){
            bw.write(i + "\n"); // 출력 - buffer
        }
        bw.flush();
        bw.close();
    }
}

백준 2741 - 입력 : BufferedReader / 출력 : Scanner

import java.io.*;
import java.util.*;

class Main{
    public static void main(String[] args) throws IOException {
        Scanner sc = new Scanner(System.in);
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        
        int n = Integer.parseInt(br.readLine()); // 입력 - buffer
        for(int i = 1; i <=n; i++){
            System.out.println(i); // 출력 - scanner
        }
    }
}

 

백준 2741 - 입력 : BufferedReader / 출력 : BufferedWriter

import java.io.*;

class Main{
    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 n = Integer.parseInt(br.readLine()); // 입력 - buffer
        
        for(int i = 1; i <= n; i++){
            bw.write(String.valueOf(i)); // 출력 - buffer
            bw.newLine();
            // bw.write(String.valueOf(i) + "\n") = 같은 방식입니다.
        }
        bw.flush();
        bw.close();
    }
}

그 결과는 이런 방식으로 나옵니다.

 

속도에서 출력 방식에서는 큰 차이를 보이지만 입력 방식에서의 속도는 입력방식 보다는 큰 차이가 없습니다.