알고리즘
[백준알고리즘] 1152 - 단어의 개수
DevBee
2021. 5. 13. 05:52
1152번: 단어의 개수
첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한
www.acmicpc.net
주어진 문장에서 단어를 구하는 문제로 앞, 뒤 공백이 있을 수 있으니 공백을 제거하고 중간 공백을 기준으로 문장을 쪼개서 나온 단어 배열의 크기를 반환하면 해결할 수 있는 문제입니다.
단, 빈 문자(" ")가 들어오는 경우 ""이 배열에 저장되어 1개의 단어가 있는 것으로 판단되기 때문에 이 경우를 찾아 0을 반환할 수 있도록 하였습니다.
자바 코드는 다음과 같습니다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 앞, 뒤 공백 제거(trim()) 및 중간 공백으로 단어 자르기(split(" "))
String[] input = br.readLine().trim().split(" ");
// 빈 문자열이 들어온 경우 0 출력
if (input.length == 1 && "".equals(input[0])) {
System.out.println(0);
} else { // 나머지 경우는 단어 개수 출력
System.out.println(input.length);
}
}
}