题目如下:

 
题解 or 思路:
因为题目假设两次飞行时间是相同的,我们可以通过减法将时差消去。那么飞行时间就是: 
    
     
      
       
        
         
          t
         
         
          i
         
         
          m
         
         
          
           e
          
          
           1
          
         
         
          +
         
         
          t
         
         
          i
         
         
          m
         
         
          e
         
         
          2
         
        
        
         2
        
       
      
      
       \frac{time_1 + time2}{2}
      
     
    2time1+time2
 题目的难点是处理输入,我们可以使用 sscanf 来进行处理,这样会方便很多!
AC 代码如下:
int get_t()
{
    string line;
    getline(cin, line);
    if (line.back() != ')')
        line += " (+0)";
    int h1, m1, s1, h2, m2, s2, f;
    sscanf(line.c_str(), "%d:%d:%d %d:%d:%d (+%d)", &h1, &m1, &s1, &h2, &m2, &s2, &f);
    return h2 * 3600 + m2 * 60 + s2 + f * 24 * 3600 - (h1 * 3600 + m1 * 60 + s1);
}
void solve()
{
    int t = (get_t() + get_t()) / 2;
    printf("%02d:%02d:%02d\n", t / 3600, t % 3600 / 60, t % 60);
}
int main()
{
    int _;
    cin >> _;
    getchar();
    // string str;
    // getline(cin, str);
    while (_--)
        solve();
}


















