#9728: C這樣寫哪裡錯? 求救


meera0144984 (Cat)

學校 : 國立高雄海洋科技大學
編號 : 48714
來源 : [61.227.116.143]
最後登入時間 :
2015-04-05 13:29:38
d097. 10038 - Jolly Jumpers -- UVa10038 | From: [1.173.18.85] | 發表日期 : 2015-03-22 15:10

#include <stdio.h>
int abs(int x,int y){
return x>y?x-y:y-x;
}
int main(){
int i,n,flag,k;
while(scanf("%d",&n)!=EOF){
int jolly[n+1],de[n+1];
flag=0;
for(i=1;i<=n;i++) de[i]=0; //歸0
for(i=1;i<=n;i++){ //輸入資料
scanf("%d",&jolly[i]);
}

for(i=1;i<n;i++){ //算差值
k=abs(jolly[i],jolly[i+1]);
de[k]=1;
}
for(i=1;i<=n;i++){ //條件檢查
if(de[i==0]) flag=1;
}
if(flag==1) printf("Not jolly\n");
else printf("Jolly\n");

}
return 0;
}
 
我這樣寫 老是會overtime(不知道有沒有對) 但是我找不出來 哪裡效率不好  請問我的程式有那裡寫得不好嗎?
 
ZeroJudge Forum