kkw564   1년 전

char a배열 크기에 문제가있나요?

계속 틀렸습니다가 뜨네요

yukariko   1년 전

아마도 띄어쓰기가 맨앞에 나오거나 맨 뒤에 나오는 경우가 있던걸로 기억합니다.

그렇게 되면 답이 틀리게 나오네요

kkw564   1년 전

배열 크기는 저렇게 크게 잡아도 상관이 없나요??

kkw564   1년 전

그리고 마지막 예외처리를


#include <stdio.h>

char a[1000001];

int i = 0;

int cnt = 0;

int space = 1; // abc def <<< 여기서 보면 알다시피 띄어쓰기 갯수 + 1 = 단어 갯수

int main()

{

scanf("%[^\n]s",a);

getchar();

cnt = strlen(a);

for(i = 0; i <= cnt ; i++)

{

if(a[i] == ' ' && a[i+1] != ' ')

{

space ++;

}

}

if(a[0] == ' ')

{

space = space - 2;

}

if(a[cnt] == ' ')

{

space --;

}

printf("%d",space);

}


이렇게 해주엇는데도 안되네요 ㅠㅠ..

위에 char 배열 크기 질문도 답변해주시면 감사하겠습니다..!

yukariko   1년 전

배열 크기는 문제없어보입니다.

다만 바로 위에 예외처리는 뭔가 문제가 있어보이네요

kkw564   1년 전

감사합니다 풀었네요

그런데 char 배열 크기는 최대 그럼 얼마나 가능한건가요..?

검색해도 잘 안나오네요 저대답은..

전역변수로 쓰게되면 그냥 무제한인가요?

yukariko   1년 전

전역변수는 data 영역에 저장될탠데 메모리 제한이 있는지는 모르겠고..

적어도 여기 저지에서 사용할 수 있는 메모리 까지는 문제 없이 될거에요.

댓글을 작성하려면 로그인해야 합니다.