前書き
LaTeX組版システムは、マクロを使用してアクセントを定義します。たとえば、文字êはによって生成され\hat{e}
ます。この課題では、タスクはこの機能のASCIIバージョンを実装することです。
入力
入力は、印刷可能なASCII文字の空でない文字列です。改行は含まれません。
出力
出力は、2行で構成される文字列です。最初の行にはアクセントが含まれ、2行目には文字が含まれています。次のように入力から取得されます(A
任意の文字を示します)。
- すべてが
\bar{A}
置き換えられているA
と_
、その上に。 - すべてが
\dot{A}
置き換えられているA
と.
、その上に。 - すべてが
\hat{A}
置き換えられているA
と^
、その上に。 - -10%のボーナスのために:すべてのが
\tilde{A}
置き換えられますA
と~
、その上に。 - 他のすべてのキャラクターの上にはスペースがあります。
たとえば、入力
Je suis pr\hat{e}t.
結果が出力されます
^
Je suis pret.
ルールとスコアリング
あなたは、文字\{}
がマクロ\bar{}
でのみ発生すると仮定することができ、\dot{}
そして\hat{}
(そして\tilde{}
あなたがボーナスに行く場合)。すべてのマクロの引数は1つの文字長いので、正確です\dot{foo}
し、\dot{}
入力には発生しません。出力は、改行で区切られた文字列、または2つの文字列のリスト/ペアです。アクセントが正しい場所にある限り、任意の量の後続および先行空白を使用できます。特に、アクセントがない場合、出力は単一の文字列になります。
完全なプログラムまたは関数を作成できます。最小のバイト数(ボーナス後)が勝ち、標準の抜け穴は許可されません。
テストケース
ボーナスなし:
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
ボーナスあり:
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}
、有効な入力ですか?