Advertisement
575

interview

575
Nov 20th, 2023 (edited)
559
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.44 KB | None | 0 0
  1. std::vector<std::pair<std::string, std::string>> getFlightsList()
  2. {
  3.     std::vector<std::pair<std::string, std::string>> flights;
  4.     // Тут что то делается и возвращается список перелетов компании
  5.     /*
  6.     Москва - Берлин
  7.     Берлин - Вена
  8.     Москва - Берлин
  9.     Москва - Берлин
  10.     Берлин - Москва
  11.     Москва - Берлин
  12.     Вена   - Берлин
  13.     Москва - Вена
  14.     Лондон - Вена
  15.     ...
  16.     */
  17.     return flights;
  18. }
  19.  
  20. std::set<std::string> getCitiesList(std::vector<std::pair<std::string, std::string>>& flights)
  21. {
  22.     std::set<std::string> result;
  23.     for (auto flight: flights) {
  24.         result.insert(flight.first);
  25.         result.insert(flight.second);
  26.     }
  27.    
  28.     return result;
  29. }
  30.  
  31. std::set<std::pair<std::string, std::string>>  getUniqueFlights(std::vector<std::pair<std::string, std::string>> flights)
  32. {
  33.     std::set<std::pair<std::string, std::string>> result;
  34.    
  35.     for (auto flight: flights) {
  36.         if (flight.first < flight.second) {
  37.             std::string tmp = flight.first;
  38.             flight.first = flight.second;
  39.             flight.second = tmp;
  40.         }
  41.         result.insert(flight);
  42.     }
  43.    
  44.     return result;
  45. }
  46.  
  47.  
  48. int main()
  49. {
  50.     auto flights = getFlightsList();
  51.     auto cities = getCitiesList(flights);
  52.     auto uniqueFlights = getUniqueFlights(flights);
  53.    
  54.     return 0;
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement