竟然错在地方,

害我花了这么多时间去找资料

后来调试了才知道错。。。wa了好多次

教训:再得到结果后未处理剩下的还没输完的数据(貌似以前也注意到过,这次一定要记住)

这可是简单题啊、、、、、、、、、、真想哭。。。。结果真不干脆。

休息,明天还要赶早去学车的。。

正确代码如下:

#include<stdio.h>
#include<math.h>
#include<string.h>
bool bo[3002];
int main()
{
 int n,a,b,k;
 while(scanf("%d",&n)==1)
 {
  if(n==0)
   printf("Jolly\n");
  else
  {
   scanf("%d",&a);
   if(n==1)
    printf("Jolly\n");
   else
   {
    memset(bo,0,sizeof(bo));
    k=n-1;
    while(k--)
    {
     scanf("%d",&b);
     if(abs(a-b)<1||abs(a-b)>=n||bo[abs(a-b)])
     {
      printf("Not jolly\n");break;
     }
     bo[abs(a-b)]=1;a=b;
    }
    if(k<0)
     printf("Jolly\n");
    else
    {
     while(k--)
      scanf("%d",&a);
    }
   }
  }
 }
 return 0;
}

posted on 2008-11-08 23:47  pandy  阅读(334)  评论(0编辑  收藏  举报