首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

ACM 简略算法总是answer wrong

2013-06-26 
ACM 简单算法总是answer wrong这个题目是UVAOJ上的494,提交了很多遍,感觉也可以得到正确的结果,可是总是an

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;
}

热点排行