[백준] 1152 단어의 개수

차누·2024년 2월 27일
0

문제

영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다.

출력

첫째 줄에 단어의 개수를 출력한다.

풀이방법

1.입력한 문자열의 양쪽 공백을 제거한다
(제거를 하지 않으면 공백도 단어로 포함이 돼 틀릴 수 있기 때문)
2.split을 이용해 공백 단위로 잘라 배열에 저장
3.배열의 크기 출력

*주의사항
공백만 입력이 되면 단어가 없기 때문에 조건을 해줘야 한다.

코드

import java.util.Scanner;

public class bj_1152 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		Scanner sc = new Scanner(System.in);
		String str = sc.nextLine().trim();
		
		int count = 0;
		
		//공백처리를 안해주면 단어가 있는걸로 판단해
		//틀렸다고 나온다
		//공백만 있고 단어가 없으면 0
		if(str.isEmpty()) {
			
			System.out.print("0");
		}
		
		else {
		
			String [] result = str.split(" ");
			
			System.out.print(result.length);
		}	
	}
}
profile
to be good programmer

0개의 댓글