Problem K
Christians Piano
Languages
en
sv
Christian vill lära sig spela piano, men klarar bara av att spela med pekfingret. Just nu håller han på att öva hårt för att lära sig ett stycke. Ett stycke beskrivs av en sekvens tangenter som ska tryckas i ordning. Exempelvis beskriver stycket abdaa att han ska trycka på tangenterna a, b, d, a, a i ordning. Du märker dock att han har svårt att röra pekfingret snabbt nog mellan tangenterna. Märkvärdigt nog tar det honom alltid exakt en sekund att flytta fingret en tangent åt sidan, men noll sekunder att trycka ner en tangent. För att hjälpa honom tänker du ändra om ordningen på pianots tangenter så att totala tiden det tar att spela stycket blir så litet som möjligt.
Till exempel, om stycket han försöker lära sig är abdaa och pianot har ordningen abd $\cdots $ (resten av pianot visas inte då detta inte påverkar svaret) kommer det totalt ta $4$ sekunder att spela stycket. Avstånden när han spelar stycket blir följande:
-
a till b tar en sekund.
-
b till d tar en sekund.
-
d till a tar två sekunder.
-
a till a tar noll sekunder.
Detta innebär att det totalt tar fyra sekunder att spela stycket abdaa på ett piano med ordningen abd $\cdots $.
Skriv ett program som läser ett stycke och skriver ut totala tiden det tar för Christian att spela stycket på pianot med bästa möjliga ordning på tangenter.
Indata
Den första och enda raden av indatan innehåller en sträng $S$ ($1 \leq |S| \leq 200$), stycket Christian vill lära sig. Stycket består av bokstäver från a-z och innehåller som mest $15$ olika bokstäver.
Utdata
Skriv ut ett heltal: totala tiden det tar för björn att spela stycket på pianot med bästa möjliga ordning.
Poängsättning
Din lösning kommer att testas på en mängd testfallsgrupper. För att få poäng för en grupp så måste du klara alla testfall i gruppen.
Grupp |
Poäng |
Gränser |
$1$ |
$20$ |
Stycket innehåller som mest $8$ olika sorters bokstäver. |
$2$ |
$80$ |
Inga ytterligare begränsningar. |
Förklaring av exempelfall 2
En möjlig optimal ordning på pianots tangenter är adbc.
Sample Input 1 | Sample Output 1 |
---|---|
abdaa |
4 |
Sample Input 2 | Sample Output 2 |
---|---|
abdaadbc |
7 |