#include <stdio.h>
#include <string.h>
int main(){
int num = 0;
int len, i;
char a[1000001];
scanf("%[^\n]s", &a);
len = strlen(a);
if (a[0]==32) {
for (i=1; i<len; i++){
if (a[i]==32) num++;
}
}
else{
for (i=0; i<len; i++){
if (a[i]==32) num++;
}
}
if (a[len-1]==32) printf("%d", num);
else {
num++;
printf("%d", num);
}
}
오래 걸렸다.. 시간을 좀 단축할 수 있도록 노력하자....
발상은 나쁘지 않았음 코딩 실력이 딸려서 구현하는데 시간이 듬...
* scanf("%[^\n]s", &a); 로 입력받아야 공백까지 입력받을 수 있다. 일반적인 %s는 공백이 나오면 거기서 scan을 멈춘다.
'solving > C, C++' 카테고리의 다른 글
[백준] 10951번 A+B - 4 (EOF 예외처리) (0) | 2022.08.25 |
---|---|
[백준] 2439번 별 찍기-2 (0) | 2022.08.24 |
[백준] 1008번 A/B (0) | 2022.08.23 |
[CodeUp] C기초100제 - 1007 : [기초-출력] 출력하기07 (0) | 2022.07.06 |
[CodeUp] C기초100제 - 1006 : [기초-출력] 출력하기06 (0) | 2022.07.06 |