Skip to main content
added 232 characters in body
Source Link
HatsuPointerKun
  • 2.2k
  • 1
  • 9
  • 13

C++, 247247 150 bytes

-97 thanks to ceilingcat

TIO Link

#include<string> #define G string #define R return#import<map> usingint P(std::G;int I(Gstring s){for(int i= 0;i<s.size();++i)ifi=0,j,q,r=-1;for(s[i];s[i++]*!=s[s.size()-~r;r=q?r:i-1])R 0;R 1;}G Sfor(G s,int i){Rauto st=s.substr(0j=q=0,i)+s.substr(i+1);}int P(G s){for(int i=0;i<s.size(-1);++i+&s[i];t[j];){if(Iq|=t[j]-*(Send(s,i)t)-++j)R;return i+1;}R-1;r;} 

Test code example :

std::cout << P("RACERCAR") << '\n'; 

C++, 247 bytes

#include<string> #define G string #define R return using std::G;int I(G s){for(int i= 0;i<s.size();++i)if(s[i]!=s[s.size()-i-1])R 0;R 1;}G S(G s,int i){R s.substr(0,i)+s.substr(i+1);}int P(G s){for(int i=0;i<s.size();++i){if(I(S(s,i)))R i+1;}R-1;} 

Test code example :

std::cout << P("RACERCAR") << '\n'; 

C++, 247 150 bytes

-97 thanks to ceilingcat

TIO Link

#import<map> int P(std::string s){int i=0,j,q,r=-1;for(;s[i++]*!~r;r=q?r:i)for(auto t=s.substr(j=q=0,i-1)+&s[i];t[j];)q|=t[j]-*(end(t)-++j);return r;} 

Test code example :

std::cout << P("RACERCAR") << '\n'; 
Source Link
HatsuPointerKun
  • 2.2k
  • 1
  • 9
  • 13

C++, 247 bytes

#include<string> #define G string #define R return using std::G;int I(G s){for(int i= 0;i<s.size();++i)if(s[i]!=s[s.size()-i-1])R 0;R 1;}G S(G s,int i){R s.substr(0,i)+s.substr(i+1);}int P(G s){for(int i=0;i<s.size();++i){if(I(S(s,i)))R i+1;}R-1;} 

Test code example :

std::cout << P("RACERCAR") << '\n';