문제 : https://www.acmicpc.net/problem/10821

풀이 방법


원래 오늘 풀 문제는 조금 난이도가 있는 문제를 풀어야 했지만, SOPT MT를 갔다와서 체력이 방전되고 컨디션이 좋지 않아서 오늘은 간단한 문제를 풀어보았습니다…;;

이 문제는 입력을 문자열 한 줄로 받아서 split() 함수를 이용해서 “,” 즉, 콤마를 기준으로 문자열을 짜릅니다. 그리고 반환값은 String 배열이기 때문에 배열로 받고 배열의 length를 출력해 주었습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.io.*;

public class BOJ10821 {
public static void main(String[] args) throws IOException {
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
//StringTokenizer st = new StringTokenizer(bf.readLine(),",");

String word = bf.readLine();
String[] words = word.split(",");
bw.write(words.length+"\n");
bw.flush();
bw.close();
}
}

배운 점


요즘은 문제를 풀면서 시간 초과가 안나는 것도 고려해가면서 문제를 풀고 있습니다. 그리고 입력과 출력을 받을 때 시간이 적게 걸리는 BufferedReader, BufferedWriter을 사용법을 알게 되었고, 적용해서 문제를 풀고 있습니다. 꾸준히 하는게 중요합니다:)