Wprowadzenie
System składu LaTeX używa makr do definiowania akcentów. Na przykład litera ê jest produkowana przez \hat{e}
. W tym wyzwaniu Twoim zadaniem jest zaimplementowanie wersji ASCII tej funkcji.
Wejście
Wprowadzony tekst jest niepustym ciągiem drukowalnych znaków ASCII. Nie będzie zawierać nowych linii.
Wynik
Twój wynik to ciąg składający się z dwóch linii. Pierwszy wiersz zawiera akcenty, a drugi wiersz znaki, do których należą. Jest uzyskiwany z danych wejściowych w następujący sposób ( A
oznacza dowolny znak):
- Każdy
\bar{A}
otrzymujeA
się_
na wierzchu. - Każdy
\dot{A}
otrzymujeA
się.
na wierzchu. - Każdy
\hat{A}
otrzymujeA
się^
na wierzchu. - Do premii -10%: każdy
\tilde{A}
otrzymujeA
się~
na wierzchu. - Wszystkie pozostałe postacie mają spację nad nimi.
Na przykład dane wejściowe
Je suis pr\hat{e}t.
daje wynik
^
Je suis pret.
Zasady i punktacja
Można założyć, że postacie \{}
występują tylko w makr \bar{}
, \dot{}
oraz \hat{}
(a \tilde{}
jeśli pójdziesz do premii). Wszystkie argumenty są dokładne makro długo jeden znak, więc \dot{foo}
i \dot{}
nie pojawią się w wejściu. Wynik może być ciągiem oddzielonym znakiem nowej linii lub listą / parą dwóch ciągów znaków. Dopuszczalna jest dowolna ilość końcowych i poprzedzających białych znaków, o ile akcenty znajdują się w odpowiednich miejscach. W szczególności, jeśli nie ma akcentów, wyjściem może być pojedynczy ciąg.
Możesz napisać pełny program lub funkcję. Wygrywa najniższa liczba bajtów (po bonusach), a standardowe luki są niedozwolone.
Przypadki testowe
Bez premii:
Input:
No accents.
Output:
No accents.
Input:
Ch\hat{a}teau
Output:
^
Chateau
Input:
Som\bar{e} \dot{a}cc\hat{e}nts.
Output:
_ . ^
Some accents.
Input:
dot hat\dot{h}a\hat{t}\hat{ }x\bar{x}dot
Output:
. ^^ _
dot hathat xxdot
Input:
\hat{g}Hmi\hat{|}Su5Y(\dot{G}"\bar{$}id4\hat{j}gB\dot{n}#6AX'c\dot{[}\hat{)} 6\hat{[}T~_sR\hat{&}CEB
Output:
^ ^ . _ ^ . .^ ^ ^
gHmi|Su5Y(G"$id4jgBn#6AX'c[) 6[T~_sR&CEB
Z premią:
Input:
Ma\tilde{n}ana
Output:
~
Manana
Input:
\dot{L}Vz\dot{[}|M.\bar{#}0\hat{u}U^y!"\tilde{I} K.\bar{"}\hat{m}dT\tilde{$}F\bar{;}59$,/5\bar{'}K\tilde{v}R \tilde{E}X`
Output:
. . _ ^ ~ _^ ~ _ _ ~ ~
LVz[|M.#0uU^y!"I K."mdT$F;59$,/5'KvR EX`
\bar{foo}
to poprawny wkład?