CSES - Leirikisa 2 - Merkkijono
  • Time limit: 0.50 s
  • Memory limit: 128 MB

Tehtäväsi on muodostaa merkkijono käyttäen kahta operaatiota:

  • lisää merkkijonon perään mikä tahansa merkki (kustannus 1)
  • lisää merkkijonon perään jokin merkkijonon osajono (kustannus 0)

Mikä on pienin mahdollinen kustannus?

Syöte

Syötteen ainoalla rivillä on merkkijono, jossa on n merkkiä. Jokainen merkki on väliltä a–z.

Tuloste

Tulosta pienin mahdollinen kustannus.

Rajat

  • 1 \le n \le 10^6

Esimerkki

Syöte:

abcdbc

Tuloste:

4

Selitys: Lisäät ensin merkit abcd yksi kerrallaan, mistä tulee kustannus 4. Tämän jälkeen lisäät osajonon bc ilman kustannusta ja merkkijono on valmis.