+-+ +-+ | | +-+ +-+ | | | | | | | | +-+ +-+ +-+ +-+
ASCIIvilleの人々は都市を再建し、新しい青写真をスケッチしています。あなたの仕事は、彼らが望む建物の数に基づいて、新しい都市を描くことです。
入力は、建物の数です。各建物は、入力の高さの半分(奇数の場合は切り上げ)であり、建物の上部と下部は含まれません。
の基本的な例を描きましょう 4
+-+ +-+ +-+ +-+ | | | | | | | | | | | | | | | | +-+ +-+ +-+ +-+
ここでわかるように|、入力が4だったため、すべての建物に2つのがあります。しかし、キャッチがあります!(つまり、上記の例は正しくなく、この投稿の上部の例は4の実際の出力です)
素数ではない各建物について、その高さは1つ下がります。数はで割り切れる場合は3、5、または10、それはより1ダウンします。それらの数値の2つ以上で割り切れる場合、差し引かれる金額は合計されます(10は10と5で割り切れ、素数ではないため、3が差し引かれます)。
の入力の例を見てみましょう5。
+-+ +-+ | | +-+ +-+ +-+ | | | | | | | | | | | | | | | | | | | | +-+ +-+ +-+ +-+ +-+
以下に例を示します 7
+-+ +-+ +-+ | | +-+ +-+ +-+ | | | | | | | | | | | | +-+ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | +-+ +-+ +-+ +-+ +-+ +-+ +-+
そして例 10
+-+ +-+ +-+ | | +-+ +-+ +-+ | | +-+ | | | | | | | | | | +-+ | | | | +-+ | | | | | | | | | | | | | | | | | | +-+ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+ +-+
そしてに戻る 6
+-+ +-+ | | +-+ +-+ +-+ | | | | | | | | | | +-+ | | | | | | | | | | | | +-+ +-+ +-+ +-+ +-+ +-+
ルール:
- 高さがゼロ以下になるように数値が差し引かれる場合、表示されませんが、スペースが残ります(これが可能だ
6とは思いませんが、ゼロに達するのに最も近いと思います) 。 - 末尾のスペースは許可されます。
- 各建物の幅は2でなければなりません。
- 入力は、stdinから行うことも、プログラムにエンコードすることもできます。
- あなたのプログラムは完全なプログラムでなければならず、機能はありません。
- あなたのプログラムは4-15ビルドが可能でなければなりません。0〜3および負の数は必要ではなく、何もするように指定されていません。つまり、エラーをスローしたり、ゴミを出力したり、何もしないことがあります。