Advertisement
MaxObznyi

Q.5

Nov 16th, 2019
179
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5. void solve(vector<int> &a, vector<int> &b) {
  6. int i = 0, j = 0;///pointers
  7. vector<int> sameValues;///answer
  8.  
  9. ///two pointers algorithm
  10. while (i < a.size() && j < b.size()) {
  11. if (a[i] == b[j])
  12. if (sameValues.size() == 0 || sameValues.back() != a[i])
  13. sameValues.push_back(a[i]);
  14. if (a[i] < b[j])
  15. i++;
  16. else
  17. j++;
  18. }
  19.  
  20. ///Printing result
  21. cout << "Same values: \n";
  22. for (int i = 0; i < sameValues.size(); i++)
  23. cout << sameValues[i] << ' ';
  24. }
  25.  
  26. int main()
  27. {
  28. int n, m; ///Sizes of arrays
  29. vector<int> a, b;///Arrays
  30.  
  31. ///Reading data
  32. cin >> n >> m;
  33. a.resize(n);
  34. b.resize(m);
  35. for (int i = 0; i < n; i++)
  36. cin >> a[i];
  37. for (int i = 0; i < m; i++)
  38. cin >> b[i];
  39.  
  40. solve(a, b);
  41. return 0;
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement