思路:蚂蚁都是一样的,当两只蚂蚁相遇各自相反方向爬行时,可以等价为相遇后交错而过。
则最长时间就是让距离端点最近的蚂蚁爬到另一个端点(最远)所需要的时间。
最短时间就是先求出所有蚂蚁爬到端点的最短距离,在求出最后一只爬到端点所用的时间即可。
#include#define max(a,b) a>b?a:bint main(void){ int L,n,x,min,max,a; scanf("%d%d",&L,&n); max=0; min=0; while(n--) { scanf("%d",&x); a = max(x,L-x); max = max(max,a); min = max(min,L-a); } printf("%d %d\n",min,max); return 0; }