Użyj STL. Na standardowe wejście podano dwie liczby całkowite m i n oraz dwa ciągi liczb całkowitych, pierwszy o długości m, drugi o długości n.Napisz program, który wypisze na standardowe wyjście wszystkie liczby, które występują w obu ciągach jednocześnie w kolejności od największej do najmniejszej.
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
int m,n;
cin>>m;
cin>>n;
vector<int>elementsM;
vector<int>elementsN;
vector<int>elements;
for(int i=0;i<m;i++){
int element;
cin>>element;
elementsM.push_back(element);
}
for(int i=0;i<n;i++){
int element;
cin>>element;
elementsN.push_back(element);
}
for(vector<int>::iterator it=elementsM.begin();it!=elementsM.end();it++){
for(vector<int>::iterator it1=elementsN.begin();it1!=elementsN.end();it1++){
if((*it)==(*it1)) elements.push_back(*it);
}
}
sort(elements.rbegin(),elements.rend());
for(vector<int>::iterator it=elements.begin();it!=elements.end();it++){
cout<<" "<<(*it);
}
}
Potrzebuję pomocy w tym, aby rozpatrzeć przypadek, gdy w ciągach występują te same liczby wielokrotnie.