representación mínima de la plantilla de cadena

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

 

Supongo que te gusta

Origin www.cnblogs.com/hhyx/p/12556502.html
Recomendado
Clasificación