본문 바로가기
알고리즘 문제풀이

[Java] 자바로 코테 풀 때 입출력 받기

by m2162003 2023. 3. 25.

자바로 입출력 받는 코테는 첨 풀어봤는데 잊어버릴꺼 같아서 기록한다.

리트코드나 프로그래머스는 상관없지만 백준 혹은 알고스팟의 경우 입출력이 필요하다.

 

입력

입력의 경우 Scanner를 쓰면 느리다고 한다. 

BufferedReader를 사용한 후 StringTokenizer를 사용해서 파싱한다.

 

출력

출력의 경우도 System.out.println보다는 버퍼를 사용하자.

 

 

아래 예시는 첫 번째 줄에는 테스트 케이스의 개수 T가 주어지고
각 테스트 케이스의 첫 번째 줄에는 N과 K
두 번째 줄에는 N개의 숫자를 받는 예시이다.

 

ex) 

1

6 4

1 2 3 4 5 6

import java.io.*;

public class Main
{
     
     public void solution() throws Exception{
         
      
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 입력
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); // 출력

        int t = Integer.parseInt(br.readLine());
        
        while(t-->0){
            
            StringTokenizer st = new StringTokenizer(br.readLine(), " ");

            int n = Integer.parseInt(st.nextToken());
            int k = Integer.parseInt(st.nextToken());
            
            st = new StringTokenizer(br.readLine(), " ");
            int []arr = new int[n];
            
            for(int i=0; i<n; i++){
                int num = Integer.parseInt(st.nextToken());
                arr[i] = num;
            }            
            
            bw.write(String.valueOf(way));
            bw.write(" ");
            bw.write(String.valueOf(buys));
            bw.newLine();
        }
        
        bw.flush(); // 남아있는 버퍼의 내용을 출력
        bw.close(); // 버퍼 해제 
     }

     public static void main(String []args) throws Exception{
        new Main().solution();
     }
     
    
}

'알고리즘 문제풀이' 카테고리의 다른 글

[Java] 음수 나머지 구하기  (0) 2023.03.26

댓글