マヤのピラミッドは、古代の建築の重要な部分であり、一般的に宗教目的に使用されていました。
それらは通常階段状のピラミッドでしたが、それぞれの階段は登るにはあまりにも急でした。司祭は儀式を行うために別の階段を介して彼らの頂点に登ります。ピラミッドは、その高さのためにランドマークとしても使用され、時には高官の埋葬地としても使用されました。
チャレンジ
ユーザー仕様に基づいてピラミッドの回路図を印刷できるプログラムを作成します(以下を参照)。
必要条件
スペースで区切られた2つの変数の入力を受け取ります。
入力は、STDIN(または最も近い代替手段)を介して受け入れられる必要があります。
出力は、STDOUT(または最も近い代替)を介して行われる必要があります。
入力
正の整数としての高さ。これは、ベースレベルの幅(ブロック単位)として使用されます。ピラミッドの各後続のレベルは、幅有する(ブロックで)前床の幅です。
n - 1n1または任意の奇数の正の整数≤(より小さい)になるブロックサイズ。
ブロック
指定されたブロックサイズによって、個々のピースの幅(および高さ)が決まります。基本的に、ブロックサイズがi^2表示されているボックス内にスペースがありますi。
1x1ブロックは次のようになります。
+++
| |
+++
5x5ブロックは次のようになります。
+++++++
| |
| |
| |
| |
| |
+++++++
水平方向に隣接するブロック
水平に並んだブロックは、中央の壁を1つに結合する必要があります。
これが必要です:
+++++
| | |
+++++
このようなものの代わりに:
++++++
| || |
++++++
垂直方向に隣接するブロック(-5%のボーナス)
縦に並んだブロックには特別な例外があります。中央の壁を1つに統合できます。
したがって、1x1ブロックの代わりに次のようになります。
+++
| |
+++
+++++
| | |
+++++
彼らは可能性があり、このようになります。
+++
| |
+++++
| | |
+++++
例
Input: 3 1
Output:
+++
| |
+++
+++++
| | |
+++++
+++++++
| | | |
+++++++
OR
+++
| |
+++++
| | |
+++++++
| | | |
+++++++
Input: 2 3
Output:
+++++
| |
| |
| |
+++++
+++++++++
| | |
| | |
| | |
+++++++++
OR
+++++
| |
| |
| |
+++++++++
| | |
| | |
| | |
+++++++++
スコアボード
スコアボードでランク付けするには、回答を次の形式で入力します。
# Language, Score
または、ボーナス-5%を獲得した場合:
# Language, Score (Bytes - 5%)
あなたのスコアは整数です。スコアが小数の場合、整数に切り上げます。
3 2生成しますか?
2 3場合、前のフロアの幅がブロックn - 1 = 0でnあるときに終了します。
1 1?