Hide

Problem C
Tastelogger

/problems/keylogger/file/statement/da/img-0001.jpg
Foto: Christian Söderberg, ingen ophavsret.

Thore elsker mekaniske tastaturer. Han har skræddersyet en konstruktion, hvor hver tast er nøje udvalgt efter fjedermodstand, aktiveringspunkt, responsprofil, slør og kliklyd. Han finder stor glæde i de mekaniske tasters lydkulisse. Dit kontor er tæt på Thores, og du er derfor modvilligt delagtiggjort i den evindelige strøm af klikken og klapren. Efterhånden har du lært at skelne de enkelte taster fra hinanden alene på lyden.

Kan du ud fra lydene fra Thores kontor afgøre, hvad han skriver?

Hver tast bortset fra omskifteren kan tastes og har sin egen, distinkte lyd. Mellemrumstasten tilføjer et enkelt mellemrum. Bogstavstasterne tilføjer et enkelt bogstav, enten stort eller lille. For eksempel tilføjer tasten M et lille »m« eller et stort »M«. Slettetasten sletter et enkelt symbol, begyndende fra det sidst tilføjede symbol, forudsat at der er symboler tilbage. (Ellers sker der ingenting.)

Stort eller lille bogstav bestemmes af tastaturets tilstand, som enten er skiftelåst eller ej, og om omskifteren holdes nede. Når Thore taster skiftelåstasten, bytter systemet til skiftelåst tilstand eller tilbage. I skiftelåst tilstand giver bogstavstasterne de store bogstaver. Denne opførsel er inverteret, når omskifteren holdes nede. Hvis for eksempel tastaturet ikke er skiftelåst, og omskifteren holdes nede, så vil tasten M indsætte et stort »M«. Hvis tilsvarende tastaturet er skiftelåst og omskifteren holdes nede, så vil tasten M indsætte et lille »m«.

Omskifteren bliver ikke tastet, men derimod enten holdt nede eller sluppet, hver med sin egen lyd. Thores tastatur har en enkelt omskifter (under hans venstre tommelfinger), således at de to lyde nødvendigvis alternerer.

Når Thore begynder arbejdsdagen, er tastaturet ej skiftelåst og omskifteren ikke holdt nede.

Følgende tabel viser de lyde, hver tast laver. Du hører ingen andre lyde, end hvad der er angivet i tabellen.

\includegraphics[width=0.7\textwidth ]{img/table-da.pdf}

Indlæsning

Første linje af indlæsningen er et heltal $N$ med $N > 0$: antal forskellige lyde, du hører fra Thores kontor. De følgende $N$ linjer indeholder en enkel lyd hver, svarende til tasterne i tabellen.

Udskrift

Skriv den resulterende tekst.

Pointsætning

Gruppe

Point

Begrænsninger

1

20

Thore bruger kun bogstavtaster, $N \leq 1\, 000$

2

30

Thore kan også bruge mellemrum, skiftelås og slet, $N \leq 100\, 000$

3

50

Thore bruger alle taster, $N \leq 100\, 000$

Sample Input 1 Sample Output 1
26
clank
bong
click
tap
poing
clonk
clack
ping
tip
cloing
tic
cling
bing
pong
clang
pang
clong
tac
boing
boink
cloink
rattle
clock
toc
clink
tuc
abcdefghijklmnopqrstuvwxyz
Sample Input 2 Sample Output 2
14
bump
tip
whack
bump
clock
clank
pong
boink
whack
pang
tip
tuc
tuc
clank
I want pizza
Sample Input 3 Sample Output 3
10
dink
pong
clang
whack
bump
click
thumb
clank
pang
boing
NO cAPS

Please log in to submit a solution to this problem

Log in