Dalam episode AAOD hari ini, kita akan membangun Kuil Cina dengan ketinggian yang bervariasi.
Pertimbangkan contoh berikut untuk tinggi ( N) 1hingga6
N = 1:
.
|
. ]#[ .
\_______/
. ]###[ .
\__]#.-.#[__/
|___| |___|
|___|_|___|
####/_\####
|___|
/_____\
N = 2:
.
|
. ]#[ .
\_______/
. ]###[ .
\___________/
. ]#####[ .
\___]#.---.#[___/
|__|_| |_|__|
|__|_|___|_|__|
#####/___\#####
|_____|
/_______\
N = 3:
.
|
. ]#[ .
\_______/
. ]###[ .
\___________/
. ]#####[ .
\_______________/
. ]#######[ .
\____]#.-----.#[____/
|__|__| |__|__|
|__|__|_____|__|__|
######/_____\######
|_______|
/_________\
N = 4:
.
|
. ]#[ .
\_______/
. ]###[ .
\___________/
. ]#####[ .
\_______________/
. ]#######[ .
\___________________/
. ]#########[ .
\_____]##.-----.##[_____/
|__|__|_| |_|__|__|
|__|__|_|_____|_|__|__|
########/_____\########
|_______|
/_________\
N = 5:
.
|
. ]#[ .
\_______/
. ]###[ .
\___________/
. ]#####[ .
\_______________/
. ]#######[ .
\___________________/
. ]#########[ .
\_______________________/
. ]###########[ .
\______]###.-----.###[______/
|__|__|___| |___|__|__|
|__|__|___|_____|___|__|__|
##########/_____\##########
|_______|
/_________\
N = 6:
.
|
. ]#[ .
\_______/
. ]###[ .
\___________/
. ]#####[ .
\_______________/
. ]#######[ .
\___________________/
. ]#########[ .
\_______________________/
. ]###########[ .
\___________________________/
. ]#############[ .
\_______]####.-----.####[_______/
|__|__|__|__| |__|__|__|__|
|__|__|__|__|_____|__|__|__|__|
############/_____\############
|_______|
/_________\
dan seterusnya.
Detail Konstruksi
Saya yakin sebagian besar detail tentang polanya jelas. Berikut adalah beberapa detail yang lebih baik:
- Pintu di bagian bawah kuil setidaknya dapat memiliki
1_lebar dan maksimum menjadi5_lebar. - Akan selalu ada dua
.tepat di atas pilar di sekitar pintu (dua vertikal|). - Tangga dimulai dengan lebar yang sama dengan pintu dan meningkat seperti yang ditunjukkan dalam pola
- The
]##..##[blok di atas masing-masing tingkat atap peningkatan ukuran2dari atas ke bawah. - Tingkat
\__...__/atap meningkat dalam ukuran4dari atas ke bawah. - Blok dinding di sekitar pintu minimal harus berisi
1_dan maksimum, di3_antara keduanya|. Prioritas masuk ke blok dinding luar sehingga yang paling dekat dengan pintu mendapatkan ukuran yang bervariasi untuk setiap tingkat. - Ruang antara
.dan](atau[) diisi oleh#di atap tepat di atas pintu.
Detail Tantangan
- Tulis fungsi atau program lengkap yang membaca bilangan bulat positif lebih besar daripada
0melalui argumen STDIN / ARGV / fungsi atau setara terdekat dan keluaran (ke STDOUT atau setara terdekat) theNChinese Shrine - Mengejar baris baru adalah opsional.
- Seharusnya tidak ada ruang trailing atau ruang trailing yang cukup untuk mengisi output dalam persegi panjang batas minimum.
- Seharusnya tidak ada ruang utama yang bukan bagian dari pola.
Papan peringkat
Posting pertama dari seri menghasilkan leaderboard.
Untuk memastikan jawaban Anda muncul, mulailah setiap jawaban dengan tajuk utama, menggunakan templat Penurunan harga berikut:
# Language Name, N bytes
di mana Nukuran kiriman Anda. Jika Anda meningkatkan skor Anda, Anda bisa menyimpan skor lama di headline, dengan mencoretnya. Contohnya:
# Ruby, <s>104</s> <s>101</s> 96 bytes
N=1ini, bukankah atap pertama terlalu panjang (lebar)?
#di samping .untuk mendukung ]dan [di atasnya. Tentang ukuran atap awal - Itulah ukuran atap di setiap atap bagian atas.
N=1kasus ini? Mengapa tidak 3 dan memiliki jendela samping yang lebih kecil seperti dalamN=2kasing?