fork download
  1. #include <bits/stdc++.h>
  2. #define ll long long
  3. using namespace std;
  4.  
  5.  
  6. int main() {
  7. string contaner;
  8. string str;
  9.  
  10. cin >> str;
  11. cin >> contaner;
  12.  
  13. ll n = str.find('|');
  14.  
  15. string str1 = str.substr(0, n);
  16. string str2 = str.substr(n + 1);
  17.  
  18. ll sz1 = str1.size();
  19. ll sz2 = str2.size();
  20. ll si = contaner.size();
  21. if ((sz1+sz2+si)%2!=0||abs(sz1-sz1)>si) {
  22. cout<<"Impossible"<<endl;
  23. return 0;
  24. }
  25. ll total= (sz1+ sz2+ si)/2;
  26. ll lefind= total-sz1;
  27.  
  28. cout<<str1+contaner.substr(0,lefind)<<'|'<<str2+contaner.substr(lefind)<<endl;
  29. return 0;
  30. }
  31.  
Success #stdin #stdout 0.01s 5284KB
stdin
Standard input is empty
stdout
|