Sekarang pengguna lain telah membantu Trump membangun dinding , saatnya bagi Anda untuk memanjatnya.
Ini adalah tantangan seni ascii di mana Anda perlu membuat dinding panjat dengan pegangan yang ditempatkan secara acak.
Dinding panjat terdiri dari panel yang masing-masing memiliki antara 3 dan 10 pegangan dan tingginya 5 panel. Setiap panel memiliki 4 karakter dan 10 karakter
Kami menggunakan |
untuk mewakili sisi dinding (arête) dan a -
untuk mewakili tepi panel. Sudut-sudut panel ditunjukkan oleh +
dan pegangan ditampilkan sebagai o
.
Akhirnya, dinding harus ada America!
di atas dan Mexico
di bawah.
Program Anda tidak boleh mengambil input kecuali input diperlukan untuk menjalankan dan harus menampilkan sesuatu yang mirip dengan di bawah ini
Ini adalah contoh output:
America!
+----------+
| o |
| o o |
| o o |
| o o |
+----------+
| o |
| o o |
| o o |
| o o |
+----------+
| o |
| o o |
| o o |
| o o |
+----------+
| o |
| o o |
| o o |
| o o |
+----------+
| o |
| o o |
| o o |
| o o |
+----------+
Mexico
Ini mungkin membingungkan diatur sehingga terstruktur lebih jelas di bawah ini
Memasukkan
Zilcho. Anda seharusnya tidak mengambil input sama sekali.
Keluaran
Dinding panjat ascii-art terdiri dari 5 panel, masing-masing 6 baris dengan 12 kolom dengan America!
berpusat di bagian atas dan Mexico
berpusat di bagian bawah. Setiap panel memiliki pola identik yang dihasilkan secara acak oleh program. Pola panel terdiri dari jumlah penahanan acak yang didistribusikan secara acak, antara 3 dan 10.
Aturan
- Tidak ada input yang diizinkan
- Saya akan mengatakan "tidak ada builtin" tetapi jika bahasa Anda memiliki builtin untuk ini, saya secara otomatis akan menerimanya sebagai pemenang.
- Ini adalah kode-golf sehingga kode terpendek (dalam byte) menang.
- Output tanpa penahanan harus persis sama seperti di atas, lagi tanpa penahanan.
- Acak adalah acak yang didefinisikan di sini
Jawaban:
Jelly ,
6557 bytePertama pernah menggunakan yang baru-fangled
⁽
, seorang dua-kode-point literal bilangan bulat tali (⁽¥0
= 2049)Program penuh tanpa input dan mencetak dinding.
Cobalah online!
Bagaimana?
sumber
)o <-- a space
. Benar-benar membuatku tertawa!PHP, 138 Bytes
Cobalah online!
Diperluas
sumber
JavaScript (ES6),
194160 byteCobalah
Pola penahanan akan berubah setiap 2 detik dalam Cuplikan di bawah ini.
Penjelasan
h
, yang diberi nilai awal0
; ini akan terus menghitung jumlah penangguhan pada panel saat kita menambahkannya.g
, yang merupakan fungsi rekursif yang akan kami gunakan untuk membuat pola penahanan acak pada panel. Kami akan kembali ke sini sebentar lagi.America!\n
.+----------+\n
) dan menetapkannya ke variabelt
, menambahkannya ke output dalam proses.| |\n
), ulangi 4 kali dan tambahkant
.g
, meneruskan string dari langkah di atas sebagai argumen, melalui parameterp
.g
:h>2
(yaitu, apakah kami memiliki 3 penahanan atau lebih).p
.g
lagi, kali ini mengirimkan salinan modifikasip
sebagai argumen.p
memilikireplace
metode yang digunakan di dalamnya, menggantikan semua<space>
karakter dengan<space>
atauo
dengan merujuk indeks karakter (0 atau 1) dari string<space>o
.Math.random()
, yang mengembalikan angka desimal antara 0 & 1, eksklusif..8
. Dengan 40 ruang di panel dan hanya ada maksimum 10 penahan, melakukan ini meningkatkan distribusi penahan di panel (.75
akan lebih akurat, tetapi, mudah-mudahan, Anda akan memberi saya konsesi untuk kepentingan menghemat satu byte!).s
.s
dipaksa ke integer (0 atau 1) dan ditambahkan keh
.h
sekarang kurang dari 11 (yaitu, apakah saat ini kami memiliki kurang dari 10 penahanan) dan apakahs
itu benar.g
5 kali.Mexico
ke ujung string untuk menyelesaikannya. Fiuh!Alternatif
Dan, hanya karena saya pikir itu akan menjadi tambahan yang bagus untuk tantangan: Untuk hanya 12 byte tambahan, kita dapat memiliki pola penangguhan yang unik pada setiap panel, alih-alih semuanya identik.
Cobalah
Sekali lagi, pola penahanan akan berubah setiap 2 detik.
Tampilkan cuplikan kode
sumber
Pyth -
5857 byte, mungkin 47Cobalah
Penjelasan solusi lama (saya akan memperbarui ketika saya punya waktu):
Saya pikir saya bisa mendapatkan 47 sementara masih secara teknis mengikuti aturan:
Di sini, jumlah lubang masih dipilih secara acak (dari himpunan {4,8}) dan konfigurasi lubang-lubang itu dipilih secara acak (dari himpunan konfigurasi di mana setiap baris identik)
Cobalah
sumber
Mathematica, 201 byte
sumber
Powershell (255 Bytes)
sumber
Python 2 ,
259224221218 byteCobalah di repl.it
-35 termasuk beberapa petunjuk dari @ Satan'sSon - terima kasih!
-3 dengan terima kasih kepada @Wondercricket
sumber
t
daripada menyimpannya ke variabel dan jika Anda menghapus spasi setelahAmerica!
danMexico
?print" America!" <NEWLINE> d,a,b,c=[" Mexico"],["+"+"-"*10+"+"],[" "]*40,0
?from random import*
dan menghapusr.
dari fungsiPython 2, 197 byte
sumber