動機:時には、あなたが文字列のどこにいるかを知る必要があります。文字列の任意の部分を見て、できる限り正確にどこにいるかを知りたいと思うでしょう。
課題:指定された長さの巻尺文字列を出力するプログラムを作成します。巻尺文字列の自己は、その長さはそれほど遠くできるだけ頻繁に、それは自身の長さだ沿って説明します。
ルール:
- プログラムは、テープメジャー文字列の合計長に対して、1つの正の整数パラメーターを取る必要があります
- 出力の桁の各連続した文字列の場合は、これらの数字は正確にこれまでの出力の長さを報告しなければなりません- 包括的!
- 長さは、文字列の先頭から各番号の末尾まで測定されます
- 文字列にはできるだけ多くの長さの数字を含める必要があります
- あいまいさを避けてください。セパレータ/デリミタを使用して、数字が並置されるのを防ぐことができます
12
。 - 文字列は、末尾のセパレータなしで、常に正確にその全長を報告する必要があります
- 長さを正確に保つために複数のセパレータが必要になる場合があります。たとえば、長さ4の巻尺文字列の例を次に示します。
1--4
非規範的/網羅的な例:
- 長さ1の巻尺文字列:
1
- 長さ2の巻尺
-2
- 長さ3の巻尺文字列:
1-3
- 長さ4の巻尺文字列:
1--4
または-2-4
(両方のレポートの長さを可能な限り頻繁に、つまり2回、正しい合計長で終わる) - 長さ10の巻尺文字列:
1-3-5-7-10
- 長さ11の巻尺文字列:
1-3-5-7--11
or1-3-5--8-11
or1-3--6-8-11
or1--4-6-8-11
or-2-4-6-8-11
(すべてできるだけ多くの長さ番号を持ち、文字列の合計の長さで終了します)
0
。
-
で構成されており、文字列にできるだけ多くの長さマークを付ける必要がありますか?