1 // O (n) 2 Char s [N], ss [N * 2 ]; 3 int n = strlen (s + 1 ); 4 para ( int i = 1 ; i <= n; i ++ ) 5 ss [i + n] = s [i]; 6 int i = 1 , j = 2 , k; 7 , mientras que (i <= n && j <= n) { 8 para (k = 0 ; k <n && s [i + k] == s [j + k]; k ++ ); 9 Si (k == n) descanso ; 10 si (s [i + k]> s [j +K]) { . 11 I = I + K + 1. ; 12 es SI (I == J) 13 es I ++ ; 14 } 15 la otra cosa { 16 J = J + K + 1. ; . 17 IF (I == J) 18 es J ++ ; . 19 } 20 es } 21 es int ANS = min (I, J); 22 es // B [ANS] representa el mínimo es decir