2
リストを整理する
以下の図のようなウィンドウで、アルファベット順に並べたい文字列のリストが表示されます。 示されているように、5つの操作があります。 上に移動[U]-選択した文字列を1つ上に移動します 下に移動[D]-選択した文字列を1つ下に移動します 最初に移動[F]-選択した文字列をリストの一番上に移動します 最後に移動[L]-選択した文字列をリストの一番下に移動します 逆[R]-リストの順序を逆にします STDINを使用して、数値(文字列の数)を受け入れ、その後に文字列の順序付けられていないリストを続けます。各文字列は、2〜99の小文字の英字で構成されます。(上記の例は有効な入力ではありません。) STDOUTを使用して、リストを整理する方法を印刷します。最初に、選択する項目に言及し、次にリストをアルファベット順に並べるためにその項目に対して実行する操作に言及します。 例えば: February U December F May D D June D R D... 説明:2月をクリックして上に移動1. 12月を選択して、上に移動します。5月、2回下に移動します。6月、一度下に移動し、リストを逆にして、もう一度下に移動... 有効なソリューションは明らかにたくさんあるので、できるだけ短いものを選択する必要があります。つまり、操作の数が最も少ないメソッドを選択します(上記の例では7)。 正しい出力と入力のつながりがある場合は、次の順序で解決してください。 文字列の選択が最も少ないものを選択します(上記の例では4)。 操作が最も少ないものを選択し、連続する同一の操作(1つの文字列に対して)を1つとしてカウントします(上の例では6)。 出力が最も短いものを選択します(合計文字数が最も少なく、スペースを数えます)。 アルファベット順で最初に出力されるものを選択します。 これはコードゴルフです。常に正しい出力を生成する最短の送信が優先されます。 例 に 2 zz abc アウト zz D に 3 cc bb aa アウト aa R に 4 abc def …