Source Code
#include <bits/stdc++.h>

using namespace std;

int main() {
    string a, b;
	cin>>a>>b;
	int sz=a.size()+b.size();
	if(sz&1)
        return cout<<-1<<endl, 0;
	sz>>=1;
	for(int i=max(0,(int)a.size()-sz); 
        i<a.size();++i) {
		int pl=i;
		int sl=mx(0,(int)(sz-(a.size()-i)));
		if (sl>b.size())
            break;
		string A=b.substr(b.size()-sl)+a.substr(i);
		string B=b.substr(0,b.size()-sl)+a.substr(0,i);

		if (A==B){
			cout<<A<<endl;
			return 0;
		}
	}
	cout<< -1<<endl;
	return 0;
}
Copy
Right into Two Mohamedmaher
GNU G++17
0 ms
0 KB
Compilation Error