fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int main(){
  4. string s,center,pal;
  5. cin>>s;
  6. int k=s.length();
  7. if(k%2==0){
  8. center="";
  9. }
  10. else{
  11. center=s[k/2];
  12. }
  13.  
  14.  
  15.  
  16. string left=s.substr(0,(k/2));
  17. string right=left;
  18. reverse(right.begin(),right.end());
  19. pal=left+center+right;
  20. if(pal>s){
  21. cout<<pal;
  22. }else{
  23. if(k%2==0)
  24. {cout<<(left[2])+1;
  25. for(int i=left.length()-1;i>=0;i--){
  26. if(left[i]+1>9){
  27. left[i]=0;
  28. continue;
  29. }
  30. else{
  31. left[i]=left[i]+1;
  32. break;
  33. }
  34.  
  35. }cout<<left;
  36. right=left;
  37. reverse(right.begin(),right.end());
  38. pal=left+center+right;
  39. cout<<pal;
  40.  
  41. }
  42.  
  43. }
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54. return 0;
  55. }
Success #stdin #stdout 0s 4292KB
stdin
123400
stdout
52