Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.74 KB | None | 0 0
  1. string map_back(vector<int> map, string s)
  2. {
  3. string new_s = "";
  4. for (char c : s)
  5. new_s += ('0' + map[c - '0']);
  6.  
  7. return new_s;
  8. }
  9.  
  10. string map_forward(vector<int> map, string s)
  11. {
  12. string new_s = "";
  13. for (char c : s)
  14. {
  15. int x = c - '0';
  16. for (int i = 0; i < map.size(); i++)
  17. if (map[i] == x)
  18. {
  19. new_s += i + '0';
  20. break;
  21. }
  22. }
  23.  
  24. return new_s;
  25. }
  26.  
  27. vector<string> strangeSort(vector<int> map, vector<string> nums)
  28. {
  29. for (int i = 0; i < nums.size(); i++)
  30. nums[i] = map_forward(map, nums[i]);
  31.  
  32.  
  33. sort(nums.begin(), nums.end(), [](const string& a, const string& b)
  34. {
  35. return stoi(a) < stoi(b);
  36. });
  37.  
  38.  
  39. for (int i = 0; i < nums.size(); i++)
  40. nums[i] = map_back(map, nums[i]);
  41.  
  42. return nums;
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement