宣告check[3001]陣列的用意是,兩者先減後得到的絕對差值x,
於check[x]放入1,如此只要檢查每個check陣列的元素是否為1,
即可確認所有差值是否為1至n-1了!
#include <stdio.h>
#include <stdlib.h>
int n;
int main(){
while(scanf("%d",&n)!=EOF){
int i,t=1;
int s[3001]={0},check[3001]={0};
for(i=1;i<=n;i++){
scanf("%d", &s[i]);
}
for(i=1;i<=n-1;i++){
check[abs(s[i+1]-s[i])]=1;
}
for(i=1;i<=n-1;i++){
if(check[i]==0)t=0;
}
if(t==0)printf("Not jolly\n");
if(t==1)printf("Jolly\n");
}
return 0;
}
沒有留言:
發佈留言