HDU 4727 The Number Off of FFF
大水题。
题目链接:http://code.hdu.edu.cn/showproblem.php?pid=4727
如果第一个士兵报数小于1,那就是第一个士兵。
否则往后判断,如果nun[i-1]-num[i] != 1,那就是i。
如果都正确,那肯定就是第一个兵报错了。
上代码:
1 #include<stdio.h> 2 #define repA(p,q,i) for( int (i)=(p); (i)!=(q); ++(i) ) 3 #define repAE(p,q,i) for( int (i)=(p); (i)<=(q); ++(i) ) 4 #define repD(p,q,i) for( int (i)=(p); (i)!=(q); --(i) ) 5 #define repDE(p,q,i) for( int (i)=(p); (i)>=(q); --(i) ) 6 #define range 100010 7 8 int a[range]; 9 int solve(int n); 10 int main() 11 { 12 int test; scanf("%d",&test); 13 int n; 14 repAE(1,test,round) 15 { 16 scanf("%d",&n); 17 repAE(1,n,i) scanf("%d",&a[i]); 18 printf("Case #%d: ",round); 19 printf("%d\n",solve(n) ); 20 } 21 return 0; 22 } 23 24 int solve(int n) 25 { 26 if( a[1] < 1 ) return 1; 27 repAE(2,n,i) 28 if( a[i] - a[i-1] != 1 ) 29 return i; 30 return 1; 31 32 }
To Be The Best Of Yourself