Spesifikasi
Dengan diberi nomor n
, tampilkan ukuran "panah meme" ASCII (lebih besar dari simbol, >
) dari ukuran n
.
n
akan selalu berupa bilangan bulat positif, lebih besar dari 0.
Contohnya
n = 2
\
\
/
/
n = 5
\
\
\
\
\
/
/
/
/
/
Kode sampel
Berikut adalah contoh program, yang ditulis dalam Crystal, yang mengembalikan hasil yang benar. Jalankan sebagai ./arrow 10
.
arrow.cr
:
def f(i)
i.times { |j|
j.times { print ' ' }
puts "\\"
}
i.times { |j|
(i-j-1).times { print ' ' }
puts '/'
}
end
f(ARGV[0].to_i)
Aturan
- Ini adalah kode-golf . Jawaban terpendek menang. Namun, saya tidak akan memilih jawaban, karena jawaban terpendek dapat berubah seiring waktu.
- Tidak ada celah standar.
n
nol?Jawaban:
Kanvas , 2 byte
Coba di sini!
sumber
C (gcc) , 56 byte
Cobalah online!
sumber
Python 2 , 54 byte
Cobalah online!
Output dengan baris baru yang tertinggal.
sumber
05AB1E , 6 byte
Cobalah online!
Penjelasan
sumber
C # (Visual C # Interactive Compiler) , 66 byte
Menyimpan satu byte berkat @someone.
Cobalah online!
sumber
n*2-b-1
->n*2+~b
C64Mini / C64 BASIC (dan varian CBM BASIC lainnya), 52 byte BASIC tokenized yang digunakan
Berikut ini adalah versi non-kebingungan untuk exaplantion:
Angka apa pun yang dimasukkan ke
N
dalam baris nol dikurangi satu karenaTAB
perintah diindeks nol; TheFOR/NEXT
loop dalam garis dua hingga empat dan lima sampai tujuh keluaran maka bagian atas dan bawah jikameme
panah masing-masing (diwakili oleh bergeserM
dan bergeserN
mode grafis sumber )sumber
for
dapatfO
(f
- shofto
),print
is?
, etc.0inputn:n=n-1:fOi=0ton:?tA(i)"\":nE:fOi=0ton:?tA(i)"/":nE
- dibutuhkan 57 byte.Ruby ,
11199777368645756 byte-12 byte terima kasih kepada Benjamin Urquhart , -43 terima kasih kepada manatwork dan -2 byte terima kasih kepada Value Ink .
Cobalah online!
Penjelasan:
Solusi Alternatif (tetapi lebih lama)
Seorang teman membaca jawaban ini dan kemudian mencoba mencari beberapa pendekatan lagi. Menempatkan mereka di sini juga, sehingga mereka tidak kehilangan jalinan yang luas.
menyuntikkan dan unshift, 72 byte
Cobalah online!
downto, inject dan unshift, 80 byte
Cobalah online!
menarik, dua loop tidak bersarang, 127 byte
Cobalah online!
sumber
String#rjust
( Coba online! ).Perl 5
-p
, 36 byteCobalah online!
sumber
Kode T-SQL, 80 byte
Cobalah online
Permintaan T-SQL, 96 byte
Untuk membuat ini berfungsi secara online, saya harus membuat beberapa perubahan kecil. Spasi di awal baris tidak ditampilkan di cuplikan online. Jadi saya menggunakan ascii 160 saja. Saat berjalan di studio manajemen, dimungkinkan untuk mengubah pengaturan untuk menampilkan hasil sebagai teks, yang akan menghasilkan ruang yang benar dalam skrip yang diposting ini.
Cobalah online
sumber
PowerShell ,
4441 byteCobalah online!
sumber
MarioLANG ,
719677 byteCobalah online!
Ini lebih sulit dari yang diharapkan ...
sumber
brainfuck , 125 byte
Cobalah online!
sumber
Arang , 5 byte
Cobalah online! Tautan adalah untuk mengucapkan versi kode. Penjelasan:
Masukkan angka dan cetak garis diagonal
\
s dengan panjang itu.Refleksikan garis secara vertikal.
sumber
APL (NARS), 40 karakter, 80 byte
uji:
sumber
Retina 0.8.2 , 32 byte
Cobalah online! Penjelasan:
Hasilkan dua garis
n
spasi.Ubah garis atas menjadi
\
diagonal.Ubah garis bawah menjadi
/
diagonal.sumber
C (gcc) ,
6765 byte-2 bytes berkat ceilingcat
Cobalah online!
sumber
Python 2 ,
8584818075 byteCobalah online!
sumber
PowerShell , 50 byte
Cobalah online!
Akan melihat ke membuatnya jadi hanya melewati rentang sekali. Tidak buruk untuk metode no brain sekalipun.
sumber
Ranting, 115 byte
Bangun string ke belakang, "kembalikan" pada akhirnya.
Menggunakan makro untuk menghasilkan semua hasil.
Makro ini harus dalam file, dan diimpor seperti ini:
Anda dapat mencobanya di https://twigfiddle.com/5hzlpz (klik "Tampilkan hasil mentah").
sumber
Haskell ,
5249 byte-3 byte terima kasih kepada Sriotchilism O'Zaic .
Cobalah online!
sumber
g$n-1
alih - alihg(n-1)
. Anda juga tidak perlu menghitungf=
karenaf
tidak pernah dirujuk.MATL,
141312 byte1 Byte disimpan berkat @LuisMendo
Penjelasan
Cobalah di MATL Online
sumber
Python 3 ,
9083 byteCobalah online!
-7 byte terima kasih kepada @squid
sumber
Rockstar, 133 byte
Coba online di sini !
Karena Rockstar tidak terkenal dengan operasi string, dibutuhkan relatif banyak kode untuk melakukannya (secara rekursif bahkan lebih lama).
Ukuran panah diambil sebagai input.
sumber
PHP ,
796361 byteCobalah online!
Rekursif dalam PHP.
-12 byte oleh @manatwork
sumber
\ / \ /> , 74 byte
Penjelasan: (garis diputar berdasarkan titik awal)
sumber
\/\/> (pronounced wɜrm)
Terima kasih, aku benci itu. (jk, saya tidak sabar untuk mencobanya)Python 3 , 55 byte
Cobalah online!
sumber
Python 2 , 63 byte
Cobalah online!
sumber
Stax , 10 byte
Jalankan dan debug itu
sumber
SimpleTemplate , 100 byte
Ini adalah tantangan yang cukup menyenangkan, tetapi beberapa bug dalam bahasa membuatnya sulit untuk dioptimalkan.
Pada dasarnya, putarankan nilai-nilai ke belakang, gunakan string dari tengah ke luar.
Bagaimana jawabannya seharusnya
Karena bug, kode tidak ditafsirkan dengan benar.
Beginilah kodenya, jika kompiler tidak memiliki bug (86 byte):
Oh, well, setidaknya solusinya bekerja: x
sumber
JavaScript (Node.js) , 42 byte (Jika membuntuti baris baru diizinkan)
Cobalah online!
JavaScript (Node.js) ,
4846 byteCobalah online!
sumber