#include <bits/stdc++.h>
using namespace std;
void compareMerge(vector<int>& a1,vector<int>& a2){
int a=a1.size();
int b=a2.size();
int l=a-1; //start from the last element of first array
int r=0; //start from the first element of second array
while(l>=0 && r<b){
if(a1[l]>a2[r]){
swap(a1[l],a2[r]);
l--;
r++;
}
else{ //here if(a1[l]<a2[r] and a1[l]==a2[r])
break;
}
}
sort(a1.begin(),a1.end());
sort(a2.begin(),a2.end());
}
int main() {
// your code goes here
vector<int>a1={1,3,4,5};
vector<int>a2={2,4,6,8};
int n1=a1.size();
int n2=a2.size();
compareMerge(a1,a2);
for(int i=0;i<n1;i++){
cout<<a1[i]<<" ";
}
for(int j=0;j<n2;j++){
cout<<a2[j]<<" ";
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnZvaWQgY29tcGFyZU1lcmdlKHZlY3RvcjxpbnQ+JiBhMSx2ZWN0b3I8aW50PiYgYTIpewoJaW50IGE9YTEuc2l6ZSgpOwoJaW50IGI9YTIuc2l6ZSgpOwoJaW50IGw9YS0xOyAvL3N0YXJ0IGZyb20gdGhlIGxhc3QgZWxlbWVudCBvZiBmaXJzdCBhcnJheQoJaW50IHI9MDsgICAvL3N0YXJ0IGZyb20gdGhlIGZpcnN0IGVsZW1lbnQgb2Ygc2Vjb25kIGFycmF5Cgl3aGlsZShsPj0wICYmIHI8Yil7CgkJaWYoYTFbbF0+YTJbcl0pewoJCQlzd2FwKGExW2xdLGEyW3JdKTsKCQkJbC0tOwoJCQlyKys7CgkJfQoJCWVsc2V7ICAgICAgICAgICAvL2hlcmUgaWYoYTFbbF08YTJbcl0gYW5kIGExW2xdPT1hMltyXSkKCQkJYnJlYWs7CgkJfQoJfQoJc29ydChhMS5iZWdpbigpLGExLmVuZCgpKTsKCXNvcnQoYTIuYmVnaW4oKSxhMi5lbmQoKSk7Cn0KIAppbnQgbWFpbigpIHsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCXZlY3RvcjxpbnQ+YTE9ezEsMyw0LDV9OwoJdmVjdG9yPGludD5hMj17Miw0LDYsOH07CglpbnQgbjE9YTEuc2l6ZSgpOwoJaW50IG4yPWEyLnNpemUoKTsKCWNvbXBhcmVNZXJnZShhMSxhMik7Cglmb3IoaW50IGk9MDtpPG4xO2krKyl7CgkJY291dDw8YTFbaV08PCIgIjsKCX0KCWZvcihpbnQgaj0wO2o8bjI7aisrKXsKCQljb3V0PDxhMltqXTw8IiAiOwoJfQoJcmV0dXJuIDA7Cn0=