본문 바로가기
코딩테스트/백준

JAVA 백준 1152번 단어의 개수

by 광고(주) 2022. 6. 1.
반응형

문제

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

입력

첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열은 공백으로 시작하거나 끝날 수 있다.
The Curious Case of Benjamin Button
The first character is a blank
The last character is a blank

출력

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

알고리즘 분류

구현(implementation), 문자열(string)

소스코드

import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        int[] c = {0,0};
        int index =0;
        int result = 0;
        c[index] = System.in.read();;
        while (true) {
            index = (index+1) % 2;
            c[index] = System.in.read();
            if(c[index] < 32) break;
            if (c[index] == 32) {
                result++;
            }
        }
        if (c[0] != 32 && c[1] != 32) {
            result++;
        }
        System.out.print(result);
    }
}
반응형

'코딩테스트 > 백준' 카테고리의 다른 글

JAVA 백준 5622번 다이얼  (0) 2022.06.01
JAVA 백준 2908번 상수  (0) 2022.06.01
JAVA 백준 1157번 단어 공부  (0) 2022.06.01
JAVA 백준 2675번 문자열 반복  (0) 2022.06.01
JAVA 백준 10809번 알파벳 찾기  (0) 2022.05.06

댓글