#include using namespace std; using ll=long long; using ld=double; #define FOR(i,a,b) for(ll i=a;i<(ll)b;++i) #define F(n) FOR(i,0,n) #define FF(n) FOR(j,0,n) #define aa first #define bb second #define PB push_back #define EQ(a,b) (fabs(a-b)<=(fabs(a+b)*EPS)) #define MOD ((ll)(1e9+7)) #define INF (1ll << 40) #define MX (500000) void preKMP(string p, int *f){ *f=-1; for(int i(1),k;p[i];++i){ k=f[i-1]; while(~k&&p[k]!=p[i-1])k=f[k]; f[i]=k+1; } } int KMP(string p, string t) { static int f[MX]; preKMP(p,f); ll x = 0; ll k = 0; for (int i(0),m(p.size());t[i];) { if (k == -1) ++ i, k=0; else if(t[i]==p[k]){ //cout << "h" << i << ' ' << k << endl; ++ i; ++ k; //if (++k==m) } else k=f[k]; //cout << k << ' ' << i << ' '<< endl; if (!t[i]) return k; } return k; } int main() { ios::sync_with_stdio(0);cin.tie(0); ll N; string str; cin >> N; cin >> str; string b = str; reverse(b.begin(), b.end()); //cout << str << endl; //cout << b << endl; cout << N - KMP(b, str) << endl; return 0; }