개발 지식/알고리즘

[백준] 1152 단어의 개수

트리맨스 2019. 2. 7. 12:26
반응형

문제 : 영어 대소문자와 띄어쓰기만으로 이루어진 문자열이 주어집니다. 

        이 문자열의 단어의 개수를 구하세요.


단어는 띄어쓰기로 구분합니다. 문자열 앞 뒤에 공백이 있을 수 있습니다.



제 문제 해결법은 이렇습니다.


이 문제는 문자열을 받는 문제이므로 fgets 함수를 쓰겠습니다.


그리고 맨 앞에 있을 수 있는 공백을 따로 처리해줍니다.


마지막으로, 공백이 여러 개 붙어 있을경우 세지 않는단 조건을 추가해 줍니다.




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include<stdio.h>
 
int main()
{
    int count,i=0;
    char array[1000001];
    
    fgets(array,sizeof(array),stdin);
        
    if(array[0]==' ')
    {
        count=0;
    }
    else
    {
        count=1;
    }
    
    while(array[i])
    {
        if(array[i]>='A'&&array[i]<='z'&&array[i-1]==' ')
        {
            count++;
        }
        i++;
    }
    
    printf("%d",count);
}
 
cs


반응형

'개발 지식 > 알고리즘' 카테고리의 다른 글

[백준] 1929 소수 구하기  (0) 2019.03.19
[백준] 10250 ACM 호텔  (0) 2019.03.15
[백준] 1834 나머지와 몫이 같은 수  (0) 2019.02.27
[백준] 2839 설탕 배달  (0) 2019.02.04
[백준] 2557 Hello World  (0) 2019.02.03