魚の解釈(いいえ、その魚ではありません)
次の5つのASCIIアートの海の生き物を考えてみましょう。 標準魚:><>または<>< スピーディな魚:>><>または<><< 丈夫な魚:><>>または<<>< 伸縮性のある魚:><<<>または<>>>< カニ: ,<..>, 任意の文字列を受け入れるプログラムを作成します<>,.。文字列全体を重複しない一連の海の生き物として解釈する方法がある場合、文字列は、生き物間に単一のスペースを挿入して再印刷する必要があります。この解釈が不可能な場合は、何も出力すべきではありません(プログラムは静かに終了します)。 たとえば、文字列<><><>は2つの標準的な魚を連続して解釈できます。対応する出力はになります<>< ><>。 別の例として、文字列に><>><>>は「...」の「インスタンス」が含まれます (括弧はインジケータとしてのみ追加されます) いくつかの標準的な魚: [><>][><>]> スピーディな魚: ><[>><>]> いくつかの方法で頑丈な魚:[><>>]<>>と><>[><>>] ただし、標準の魚と頑丈な魚のペアリングのみ[><>][><>>]が、文字列の長さ全体に広がり、魚を共有する文字はありません(重複はありません)。したがって、に対応する出力><>><>>は><> ><>>です。 文字列の解釈方法が複数ある場合は、それらのいずれかを印刷できます。(そして、そのうちの1つだけを印刷します。)たとえば<><<<><、標準の魚と頑丈な魚:[<><][<<><]、または高速の魚と標準の魚:として解釈できます[<><<][<><]。したがって、どちら<>< <<><か<><< <><が有効な出力になります。 カニはただの楽しみです。彼らは開始かで終わらないので<または>、彼らは(少なくとも視覚)を識別する方がはるかに簡単です。たとえば、文字列 ,<..>,><<<>,<..>,><>,<..>,<>>><,<..>,><>>,<..>,<<><,<..>,<><,<..>,>><> 明らかに出力を生成します ,<..>, ><<<> ,<..>, ><> ,<..>, <>>>< ,<..>, ><>> ,<..>, <<>< ,<..>, <>< ,<..>, >><> 出力を生成しない文字列の例(1行に1つ)を次に示します。 <><> ,<..>,<..>, >>><> ><<<<> , ><><> ,<><>, <<<><><<<>>><>><>><><><<>>><>><>>><>>><>><>><<>< 先頭の文字列を削除すると、ここの最後の文字列を解析できます<。 <<>< …