Fernando è stato assunto dall'Università di Waterloo per completare un progetto avviato di recente. L'università intende costruire, fuori dal campus, una strada rappresentativa con bungalow destinati a ospiti stranieri e collaboratori di rilievo.
Al momento la strada è edificata solo parzialmente: inizia presso la riva di un lago e si estende verso il bosco, dove termina. Il compito di Fernando è quello di completare l'edificazione della strada, costruendo alcuni altri bungalow alla sua fine, presso il bosco. Tutte le case già costruite si trovano sullo stesso lato della strada, e i nuovi bungalow devono essere collocati sullo stesso lato. I bungalow esistenti differiscono per tipo e sono dipinti di colori diversi.
A giudizio di Fernando, la strada appare un po' caotica. Egli teme che le nuove case, realizzate secondo il proprio progetto, non facciano che rafforzare questa impressione. Per introdurre un elemento di ordine, ha deciso di scegliere i colori dei nuovi bungalow in modo che l'intera sequenza di colori delle case sulla strada diventi simmetrica. Ciò significa che la sequenza di colori deve leggersi allo stesso modo da entrambe le estremità della strada.
Tra gli altri compiti, Fernando è interessato a sapere qual è il numero minimo di nuovi bungalow che è necessario costruire e colorare in modo opportuno per completare il progetto secondo la simmetria prevista.
Nella prima riga è dato un numero intero n~(1 \le n \le 4 \cdot 10^5) — il numero di bungalow già costruiti.
Nella seconda riga è data la sequenza dei loro colori nell'ordine a partire dall'inizio della strada presso il lago. È una stringa di lunghezza , composta da lettere latine minuscole da '' a '', ciascuna delle quali indica un determinato colore.
Stampate il numero minimo di bungalow che devono essere aggiunti alla fine della strada e colorati in modo opportuno, affinché l'intera sequenza di colori diventi simmetrica.
Esempio 1
Esempio 2
Esempio 3