5
LaTeXアクセントマクロを実装する
前書き 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: …