fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <algorithm>
  4.  
  5. struct Sheep
  6. {
  7. std::string Vardas;
  8. std::vector<char> Fragmentas;
  9. int atitikme;
  10. };
  11.  
  12. int main()
  13. {
  14. std::vector<Sheep> vec =
  15. {
  16. {"Baltukas", {'T','A','G','C','T','T'}, 3},
  17. {"Bailioji", {'A','T','G','C','A','A'}, 3},
  18. {"Smarkuolis",{'A','A','T','G','A','A'}, 1},
  19. {"Hmarkuolis",{'A','A','T','G','A','A'}, 1},
  20. {"Kmarkuolis",{'A','A','T','G','A','A'}, 2}
  21. };
  22.  
  23. std::sort(vec.begin(), vec.end(), [](const Sheep& lhs, const Sheep& rhs)
  24. {
  25. return (lhs.atitikme == rhs.atitikme) ?
  26. lhs.Vardas < rhs.Vardas:
  27. lhs.atitikme > rhs.atitikme;
  28. });
  29.  
  30. for (const auto& it: vec)
  31. std::cout << it.Vardas << " " << it.atitikme << "\n";
  32.  
  33. return 0;
  34. }
  35.  
  36.  
Success #stdin #stdout 0s 4544KB
stdin
Standard input is empty
stdout
Bailioji 3
Baltukas 3
Kmarkuolis 2
Hmarkuolis 1
Smarkuolis 1