题目链接:https://vjudge.net/problem/UVA-10714
刚看到这道题的时候觉得很熟悉,想起来之前刚学贪心时在白书上看过,去查了一下,POJ也有这题。
题意就是一个木棍上有许多只蚂蚁,两只蚂蚁相遇后会改变自己的方向,给出蚂蚁的位置,初始方向任意。求最短时间和最长时间。
思路:两只蚂蚁相遇再换方向就可以理解为蚂蚁穿过去了,直接求蚂蚁初始位置和木棍两端的距离,所有蚂蚁之间相互独立。
#include<bits/stdc++.h>
using namespace std;
int main()
{
int T;
while(cin>>T)
{
while(T--)
{
int l,n;
cin>>l>>n;
int ans1=0,ans2=0;
for(int i=0;i<n;i++)
{
int num;
cin>>num;
ans1=max(ans1,min(num,l-num));
ans2=max(ans2,max(num,l-num));
}
cout<<ans1<<' '<<ans2<<endl;
}
}
return 0;
}