테스트 대비

Ajisai·2023년 7월 12일
0

Java

목록 보기
4/17

입력

System.setIn(new FileInputStream("res/input_d1_2072.txt"));
BufferedReader br = new BufferedReader(
    new InputStreamReader(System.in, "UTF-8")
);

문자열 분할

split() 말고 StringTokenizer 쓸 것
정규표현식 쓸 때는 split()이 좋은데 단순 공백으로 분할하는 경우에는 StringTokenizer가 낫다.

문자열 병합

System.out.printf() 말고 StringBuilder 쓸 것

Example

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

class Solution {
	public static void main(String args[])
	throws Exception {
		System.setIn(new FileInputStream("res/input_d1_2072.txt"));
		BufferedReader br = new BufferedReader(
		    new InputStreamReader(System.in, "UTF-8")
		);

		int T = Integer.parseInt(br.readLine());
		for(int tc = 1; tc <= T; tc++) {
			StringTokenizer st = new StringTokenizer(br.readLine(), " ");
			int ans = 0;
			while(!st.hasMoreTokens()) {
				int n = Integer.parseInt(st.nextToken());

				if(n%2 != 0) {
					ans += n;
				}
			}
			
			System.out.println(new StringBuilder("#").append(tc).append(" ").append(ans));
		}
		
		br.close();
	}
}

주석도 부분채점

line by line으로 붙이는 게 좋다.

parameter로 넘기자

static으로 선언해서 쓰는 거보다 넘기는 게 더 빠름

profile
Java를 하고 싶었지만 JavaScript를 하게 된 사람

0개의 댓글

관련 채용 정보