반응형
단어의 개수
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞은 사람 | 정답 비율 |
| 2 초 | 128 MB | 155586 | 43493 | 33767 | 28.305% |
문제
영어 대소문자와 띄어쓰기만으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다.
입력
첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열의 앞과 뒤에는 공백이 있을 수도 있다.
출력
첫째 줄에 단어의 개수를 출력한다.
Teullinika Teullyeotzi
예제 입력 |
예제 출력 |
| The Curious Case of Benjamin Button | 6 |
| Mazatneunde Wae Teullyeoyo | 6 |
| Teullinika Teullyeotzi | 2 |
풀이 과정
1. 자바의 StringToStringTokenizer를 이용해서 풀었다. StringTokenizer로 문자열을 자를때 값을 넣어주면 그 값을 기준으로 문자열을 파싱해준다. 그리고 그 파싱된 개수는 countTokens()를 활용해 알아낼 수 있다.
Java 코드
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args)throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine()," ");
System.out.println(st.countTokens());
}
}
반응형
'알고리즘 > 백준' 카테고리의 다른 글
| 백준 14889 : 스타트와 링크 Java (0) | 2023.07.04 |
|---|---|
| 백준 2667 : 단지번호붙이기 Java (0) | 2023.07.04 |
| 백준 2908 : 상수 Java (0) | 2023.07.02 |
| 백준 5622 : 다이얼 Java (0) | 2023.07.01 |
| 백준 2292 : 벌집 Java (0) | 2023.06.30 |