zoj 2376 Ants (水題,剛開始不會)
阿新 • • 發佈:2019-02-14
做BFS螞蟻找家那道題,突然想起來前邊beginner problem裡還有道螞蟻題放過去了,就又去看了看,我靠,果然是到水題啊!!!最開始時只會算最小時間,最大時間感覺很麻煩。。。現在又一想:
就算碰頭了,那麼兩邊還是各有一隻螞蟻再走,這不相當於沒碰頭啊!!!!天!!!!!!!!!!所以只需要找出距離斷點最遠的那隻螞蟻就可以了、。。。
#include<stdio.h> #include<math.h> int main() { int a,t,len,num,max,min,i,p1,p2,t1,q; scanf("%d",&t); while(t--) { scanf("%d%d",&len,&num); max=0; min=q=2000000; for(i=0;i<num;i++) { scanf("%d",&a); t1=len-a; p1=(t1>a)?t1:a; p2=abs(len/2-a); if(p1>max) max=p1; if(p2<q) { q=p2; if(a>len/2) min=len-a; else min=a; } } printf("%d %d\n",min,max); } return 0; }