仲間のPPCGユーザーからのyoutubeビデオに触発されました...
あなたが挑戦するのは、ASCIIアートを使用して、安山岩と閃緑岩のMinecraft城壁を描くことです。壁の形はカンターセットです。参照用に、カンターセットは、次のN回繰り返して作成されます。
- 現在のステップを3倍に
- 真ん中のスペースを空白に置き換えます
- その下に完全な行を追加します
これにより、最初の4つのステップで次が作成されます。
*
* *
***
* * * *
*** ***
*********
* * * * * * * *
*** *** *** ***
********* *********
***************************
ただし、あなたの挑戦はそれほど単純ではありません。ご覧のとおり、カンターセットが非常に大きくなった後、同じキャラクターを何度も繰り返し見るのは退屈になります。そのため、アスタリスク*
とポンド記号を交互に重ねて表示することで、これを変更します#
。3文字ごとに水平方向に、すべての行を垂直方向に交互に配置する必要があります。(もちろんスペースは同じままにします)たとえば、2番目の例は次のようになります。
* *
###
3番目の例は次のようになります。
* * * *
### ###
***###***
完全を期すために、ここに例4と5を示します。
#4
* * * * * * * *
### ### ### ###
***###*** ***###***
###***###***###***###***###
#5
* * * * * * * * * * * * * * * *
### ### ### ### ### ### ### ###
***###*** ***###*** ***###*** ***###***
###***###***###***###***### ###***###***###***###***###
***###***###***###***###***###***###***###***###***###***###***###***###***###***
そして、1 メガ例、第6の繰り返し:
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ###
***###*** ***###*** ***###*** ***###*** ***###*** ***###*** ***###*** ***###***
###***###***###***###***### ###***###***###***###***### ###***###***###***###***### ###***###***###***###***###
***###***###***###***###***###***###***###***###***###***###***###***###***###*** ***###***###***###***###***###***###***###***###***###***###***###***###***###***
###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###
チャレンジ
入力に正の整数を受け入れ、このMinecraftの城のフラクタルのN番目の世代を出力する完全なプログラムまたは関数を作成する必要があります。妥当な方法で入出力を行うことができ、無効な入力(1未満の数値、浮動小数点数、非数値など)を心配する必要はありません。
バイト単位で測定した最短回答が勝ちです!