一個長度爲n(n>0)的序列中存在「有趣的跳躍」當前僅當相鄰元素的差的絕對值通過排序後正好是從1到(n-1)。例如,1 4 2 3存在「有趣的跳躍」,由於差的絕對值分別爲3,2,1。固然,任何只包含單個元素的序列必定存在「有趣的跳躍」。你須要寫一個程序斷定給定序列是否存在「有趣的跳躍」。spa
4 1 4 2 3
Jolly
1 #include<math.h> 2 #include<stdio.h> 3 #include<stdlib.h> 4 int cmp(const void *x,const void *y) 5 { 6 return *(int *)x - *(int *)y; 7 } 8 int main() 9 { 10 int n,i,a[3005]={0},t,t2; 11 scanf("%d",&n); 12 scanf("%d",&t); 13 for(i=1;i<n;i++) 14 { 15 scanf("%d",&t2); 16 a[i]=fabs(t2-t); 17 t=t2; 18 } 19 qsort(a+1,n-1,sizeof(a[0]),cmp); 20 for(i=1;i<n;i++) 21 { 22 if(a[i]!=i) break; 23 } 24 25 if(i<n)printf("Not jolly\n"); 26 else printf("Jolly\n"); 27 return 0; 28 }