fork download
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. bool cmp(const pair<int, vector<string>::iterator> A, const pair<int, vector<string>::iterator> B)
  6. {
  7. if(A.first == B.first)
  8. return *(A.second).size() < *(B.second).size();
  9. return A.first < B.first;
  10. }
  11.  
  12. int main()
  13. {
  14.  
  15. vector <vector<string>> allpaths {{"A", "B"}, {"A", "C", "B"}, {"A", "C", "E", "B"}};
  16. vector <int> cost {4,5,4};
  17. vector <pair<int, vector<string>::iterator>> V;
  18. for(int i=0; i <allpaths.size(); i++)
  19. V.push_back(make_pair(cost[i], allpaths[i].begin()));
  20. sort(V.begin(), V.end(), cmp);
  21. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp: In function ‘bool cmp(std::pair<int, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char>*, std::vector<std::__cxx11::basic_string<char> > > >, std::pair<int, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char>*, std::vector<std::__cxx11::basic_string<char> > > >)’:
prog.cpp:8:22: error: ‘const class __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char>*, std::vector<std::__cxx11::basic_string<char> > >’ has no member named ‘size’
   return *(A.second).size() < *(B.second).size();
                      ^~~~
prog.cpp:8:43: error: ‘const class __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char>*, std::vector<std::__cxx11::basic_string<char> > >’ has no member named ‘size’
   return *(A.second).size() < *(B.second).size();
                                           ^~~~
stdout
Standard output is empty