(백준)1152 단어의 개수 풀기

DevSeoRex·2022년 6월 15일
1

백준

목록 보기
12/12

이번 문제의 요지는, 공백으로 구분되어 있는 문장에서 단어의 갯수를 세서 출력하는 문제입니다.

이 문제는 반례가 하나 있는데 그것이 마지막 문장에 나와있다.
"문자열은 공백으로 시작하거나 끝날 수 있다."
이게 포인트 였다. 이 반례를 무시하고 그냥 단어의 개수만 세면 공백으로 시작하거나 끝나는 단어까지 세서 오답이 나오게된다.

먼저 Scanner로 문자열을 입력받는다.

Scanner sc = new Scanner(System.in);
String[] words = sc.nextLine().split(" ");

words 배열에 공백을 구분자로 하여, 단어를 잘라 넣는다.

단어가 몇개인지 세줄 count 변수를 초기화하고 단어를 센다.

for(int i=0; i<words.length; i++) {
			if(words[i].equals("")) {
				
			}else {
				count++;
			}
		}

if문에서 words 안에 들어있는 단어중에 공백과 일치하는 단어는 단어가 아니므로, count를 세지 않고, 그렇지 않을때만 단어를 카운트 하도록 하였다.

전체 코드

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String[] words = sc.nextLine().split(" ");
		int count = 0;
		
		for(int i=0; i<words.length; i++) {
			if(words[i].equals("")) {
				
			}else {
				count++;
			}
		}
		
		System.out.println(count);
	}

}

0개의 댓글