2010-12-10 15:44:04 /*功能: 函数返回参数arg的绝对值。 1、fabs 语法: #include <math.h> double fabs( double arg ); 2、abs 语法: #include <stdlib.h> int abs( int num ); */ #include <iostream> using namespace std; const int maxn = 1000001; int nLength, nNum; int nPos[maxn]; int earistT, latestT; void funcInput(); void funcWorkout(); void funOutput(); int main() { int nCase; scanf("%d", &nCase); while (nCase--) { funcInput(); funcWorkout(); funOutput(); } return 0; } void funcInput() { scanf("%d %d", &nLength, &nNum); for(int i = 0; i < nNum; i++) { scanf("%d", &nPos[i]); } } void funcWorkout() { earistT = 0; latestT = 0; for(int i = 0; i < nNum; i++) { int temp_max = abs(nPos[i] - nLength) > nPos[i] ? abs(nPos[i] - nLength) : nPos[i]; int temp_mix = abs(nPos[i] - nLength) < nPos[i] ? abs(nPos[i] - nLength) : nPos[i]; if(temp_mix > earistT) { earistT = temp_mix; } if(temp_max > latestT) { latestT = temp_max; } } } void funOutput() { printf("%d %d/n", earistT, latestT); }