UVa 10714

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 using namespace std;
 5 
 6 /*题意:求所有蚂蚁走下长杆的最长时间和最短时间*/
 7 
 8 /*最短时间:先求出每个蚂蚁走下杆的最短时间。然后求出最短时间的最大值
 9 最长时间:先求每个蚂蚁走下杆的最长时间。然后求出最长时间的最大值*/
10 
11 int max(int a,int b){
12      if (a > b)return a;
13      else
14         return b;
15 }
16 int min(int a,int b){
17      if(a < b)return a;
18      else return b;
19 }
20 class Ant{
21     private:
22         int poleLenth;
23         int antNum;
24         int minTime ;
25         int maxTime ;
26     public:
27         void readData();
28         void process();
29 };
30 void Ant::readData(){
31     int cases;
32     scanf("%d",&cases);
33     while(cases--){
34         minTime = -1;
35         maxTime = -1;
36         scanf("%d%d",&poleLenth,&antNum);
37         for(int i = 0;i < antNum;i++){
38             process();
39         }
40         cout<<minTime<<" "<<maxTime<<endl;
41     }
42 }
43 void Ant::process(){
44     int local;
45     scanf("%d",&local);
46     minTime = max(minTime,min(local,poleLenth - local));
47     maxTime = max(maxTime,max(local,poleLenth - local));
48 }
49 
50 int main()
51 {
52     Ant ant;
53     ant.readData();
54     return 0;
55 }
Donghua University
原文地址:https://www.cnblogs.com/ohxiaobai/p/4494034.html