读书人

ACM 简略算法总是answer wrong

发布时间: 2013-06-26 14:29:32 作者: rapoo

ACM 简单算法总是answer wrong
这个题目是UVAOJ上的494,提交了很多遍,感觉也可以得到正确的结果,可是总是answer wrong,麻烦大家给看看,谢了!
下面是我写的一小段代码,请大家多多指教。
char buf[100];
void counting_game(void)
{
int length,i,count=0;
memset(buf,0,100);
while(fgets(buf,100,stdin) != NULL)
{
length = strlen(buf);
for(i=0;i<length-1;i++)
{
if((buf[i]>='a' && buf[i]<='z') || (buf[i]>='A' && buf[i]<='Z'))
{
if((buf[i+1]>='a' && buf[i+1]<='z') || (buf[i+1]>='A' && buf[i+1]<='Z'))
continue;
else
count++;
}
}
if(count < 1)
continue;
printf("%d\n",count);
memset(buf,0,100);
count = 0;
}
}
int main(void)
{
counting_game();
return 0;
}
[解决办法]
楼主没给题目,
之前做过的AC代码,看看有什么不同

// 494 Kindergarten Counting Game
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>

int main()
{
char str[100000];
int num = 0;
int i;
while (fgets(str, sizeof(str), stdin) != NULL) {
num = 0;
for (i = 0; i < strlen(str)-1; ++i) {
if (isalpha(str[i]) && !isalpha(str[i+1]))
++num;
}
printf("%d\n", num);
}

return 0;
}

读书人网 >软件架构设计

热点推荐