백준 같은 문제를 풀 때, 입출력을 Scanner + System.out으로 받으면 시간 초과가 나고, BufferReader + BufferWriter로 받으면 통과하는 문제가 많습니다. 이는 두 방식의 동작 차이 때문인데, 추후 기회가 되면 자세히 다뤄보도록 하겠습니다.
Scanner sc = new Scanner(System.in);
String next = sc.next();
System.out.println(next);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(out));
String input = br.readLine();
bw.write(input);
bw.flush();
br.close();
bw.close();
그런데 위의 코드를 보면 알 수 있듯 BufferReader, BufferWriter로 입출력을 받는 방식은 너무 작성해야 할 코드가 많습니다.
프로그래머스 같은 문제를 푼다면 신경 쓸 필요가 없는 부분이긴 합니다. 하지만 백준에 있는 많은 문제들을 Java로 풀어보기 위해서는, 익숙해져야 할 필요가 있습니다.
IntelliJ에서 사용자 등록 스니펫을 설정할 수 있습니다.

setting -> live template -> Java로 이동해서 Live Template을 추가합니다.

그리고 축약어와 설명을 작성해주고, Template text 부분에는 아래의 코드를 입력해주면 됩니다.
+) 언어 설정을 Java로 맞춰줘야 합니다. 아래의 Change 칸에서 설정이 가능합니다.
public static void main(String[] args) throws Exception {
java.io.BufferedReader br = new java.io.BufferedReader(new java.io.InputStreamReader(java.lang.System.in));
java.io.BufferedWriter bw = new java.io.BufferedWriter(new java.io.OutputStreamWriter(java.lang.System.out));
String input = br.readLine();
bw.write(input);
bw.flush();
br.close();
bw.close();
}
Use static import if possible을 체크해주면, 자동으로 import를 해줍니다.
+) 필요에 따라 다르게 수정하는게 좋을 수도 있겠습니다.

Main 클래스 안에서 ps를 입력하면 템플릿이 뜨는 걸 확인할 수 있습니다.
