Keluarkan teks di bawah ini, atau daftar daftar bilangan bulat (lebih detail di bawah).
0
10 1
20 11 2
30 21 12 3
40 31 22 13 4
50 41 32 23 14 5
60 51 42 33 24 15 6
70 61 52 43 34 25 16 7
80 71 62 53 44 35 26 17 8
90 81 72 63 54 45 36 27 18 9
91 82 73 64 55 46 37 28 19
92 83 74 65 56 47 38 29
93 84 75 66 57 48 39
94 85 76 67 58 49
95 86 77 68 59
96 87 78 69
97 88 79
98 89
99
Aturan
- Jika mau, Anda dapat "satu indeks" dan ganti masing
n
- masing dengann+1
. Dalam hal ini output akan berisi angka 1 hingga 100 inklusif.
Jika output berupa teks
- Digit tunggal disejajarkan dengan benar di setiap kolom dalam teks yang disediakan, tetapi tidak apa-apa jika Anda ingin menyelaraskan ke kiri. Selain itu, perataan tidak harus konsisten antara kolom.
- Ruang putih terkemuka / trailing diizinkan. Ruang tambahan di setiap baris juga diizinkan.
- Mengembalikan daftar garis dapat diterima.
Jika output numerik
- Output dapat berupa daftar bilangan bulat (atau array 2D):
[[1], [11, 2], [21...
- Mengapung baik-baik saja.
- Jika tidak mungkin untuk memiliki array nonrectangular dalam bahasa yang digunakan, maka elemen-elemen dalam array yang tidak berada dalam segitiga dapat mengambil nilai apa pun dan akan diabaikan.
Jika Anda lebih suka format lain, jangan ragu untuk bertanya.
Kode terpendek menang.
Jawaban:
Jelly ,
13 12 106 byte-4 Terima kasih pada Dennis, ya EMPAT! (penggunaan indeks grup dan produk Cartesian)
Menggunakan pengindeksan 1 dan opsi daftar untuk output.
Cobalah online! (Footer memformat output dalam representasi Python)
... atau melihat versi terindeks, diformat .
Bagaimana?
sumber
Ġ
bahkan dilakukan dunia ?![5,7,5,9]Ġ
akan kembali[[1,3],[2],[4]]
. Ini karena indeks[1,3]
sesuai dengan nilai5
dalam array asli,[2]
ke7
dan[4]
ke9
.Python 2 , 54 byte
Cobalah online!
(1-diindeks, karena
range(k,0,-9)
lebih pendek darirange(k,-1,-9)
.)sumber
Arang ,
2920 byteCobalah online! Tautan adalah untuk mengucapkan versi kode. Catatan: ruang tambahan. Penjelasan:
sumber
JavaScript (ES6), 61 byte
Berbasis 0. Mengembalikan string.
Cobalah online!
Bagaimana?
Kita mulai dengan k = n = 0 dan berhenti ketika k = 99 . Kami mengurangi 9 dari k pada setiap iterasi.
Akhir baris terdeteksi dengan
k % 10 <= 0
. Kondisi ini terpenuhi jika:k adalah negatif (bagian atas piramida) karena tanda modulo di JS adalah dividen.
atau k% 10 == 0 (bagian bawah piramida)
Di awal baris berikutnya, kita tambahkan 1 atau 10 ke n dan mulai lagi dari sana.
sumber
Python 2 , 66 byte
Cobalah online!
sumber
J , 14 byte
Cobalah online!
catatan:
Solusi ini menggunakan keluaran kotak - Saya tidak yakin apakah itu diizinkan (saya harap demikian, karena daftar bilangan bulat juga diperbolehkan)
Alternatif:
J , 10 byte
Dalam solusi ini angka-angka di luar area segitiga ditampilkan sebagai
0
Cobalah online!
Penjelasan:
i.,~10
menciptakan matriks 10x10 dari angka 0..99,~10
adalah kependekan dari10 10
/.
menemukan diagonal miring (antidiagonals) dari matriksMenggunakan
]
(sama) pad semua garis dengan0
s. Setiap baris dibalik. Untuk menghilangkan angka nol, saya mengotak-atik garis<
setelah dibalik|.
Boxing membuat daftar daftar menjadi rata. Saya akhirnya mencabut
,.
daftar sehingga garis-garisnya diatur dalam kolom.sumber
Bash Murni (tanpa utilitas eksternal), 66
Cobalah online!
sumber
Pyth , 16 byte
Cobalah online!
sumber
Gol> <> , 24 byte
Cobalah online!
Outputnya terlihat seperti ini:
Bagaimana itu bekerja
sumber
R ,
5048 byteCobalah online!
1-diindeks. Mengikuti logika yang sama dengan jawaban Jelly Jonathan Allan , jadi pastikan untuk membatalkannya.
Sebagai bonus, berikut ini juga merupakan implementasi dari pendekatan perulangan standar (0-diindeks). Di sini, saya setidaknya mencoba untuk membuat output yang lebih cantik (dengan demikian, bahkan tidak menyimpan byte untuk
print
bukannyacat(...,"\n")
menghilangkan gangguan[1]
s yang di konsol.R ,
6659 byteCobalah online!
Sunting: -2 dan -7 keduanya berkat Giuseppe.
sumber
R ,
137 86 7369 byteCobalah online!
Versi golf sebelumnya,% 100 kredit ke Giuseppe .
Cobalah online!
Di bawah upaya pertama saya di Codegolf menyimpannya hanya untuk dicatat.
Cobalah online!
sumber
seq_len
dengan1:
di sebagian besar tempat; Saya juga menggunakany:1
bukanrev
.Oktaf ,
67666564 byteCobalah online!
Titik koma yang hilang itu menyakiti mataku!
sumber
05AB1E , 22 byte
Cobalah online!
Pendekatan Super Naif: Cobalah secara online! mungkin merupakan solusi yang lebih baik, tetapi saya tidak tahu bagaimana cara mendapatkan dari A ke B.
sumber
PowerShell , 77 byte
Cobalah online!
Keluaran sebagai ASCII-art dengan digit tunggal selaras kiri. Mengeksploitasi fakta bahwa merender array memasukkan ruang antara elemen secara default.
Sangat mirip dengan jawaban Rod's Python, tampaknya, tetapi dikembangkan secara mandiri.
sumber
JavaScript, 69 byte
Cobalah online!
JavaScript REPL, 77 byte
sumber
Perl 5 , 62 byte
Cobalah online!
1-diindeks untuk menyimpan beberapa byte
sumber
Ruby , 58 byte
Cobalah online!
sumber
Merah ,
105, 9591 byteCobalah online!
Penjelasan:
sumber
JavaScript , 112 byte
Tidak begitu optimal, tetapi saya ingin mencoba pendekatan yang berbeda.
Cobalah online!
Solusi lama:
Cobalah online!
sumber
05AB1E , 16 byte
Cobalah online!
Penjelasan
sumber
Perl 6 ,
4340 byteCobalah online!
-3 byte berkat b2gills Brad Gilbert.
sumber
[R,] LIST
lebih pendek darireverse LIST