perry05

[백준] 1152 - 단어의 개수(JAVA) 본문

문제풀이 기록/JAVA

[백준] 1152 - 단어의 개수(JAVA)

perry05 2022. 11. 28. 15:54

[백준] 단계별로 풀어보기 - 문자열

https://www.acmicpc.net/problem/1152

 

1152번: 단어의 개수

첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열

www.acmicpc.net

 

> 문제

 

> 풀이

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

public class Main {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st;
		
		st = new StringTokenizer(br.readLine(), " ");
		br.close();
		
		System.out.println(st.countTokens());
	}
}

StringTokenizer를 활용하여 문제를 풀었다. StringTokenizer는 구분자 사이에 데이터가 없으면 해당 데이터를 무시한다.

split을 사용하여 문자열 배열의 길이로 풀게되면 맨 앞 공백이 있을 경우 1 큰 값이 출력되어 해당 부분을 빼주는 과정이 필요하다.

Comments