Dalam tantangan ini, Anda akan mendapatkan empat tugas berbeda namun agak terkait yang harus diselesaikan secara spesifik. Pertama, saya akan menjelaskan tugasnya, kemudian ikuti penjelasan tentang bagaimana Anda harus menyelesaikannya.
Kode Anda harus untuk keempat tugas mengambil dua bilangan bulat positif sebagai input:, di n,mmana n<m. Semua tugas harus diselesaikan dalam bahasa yang sama. Orientasi matriks bersifat opsional (n-by-m dapat diartikan sebagai "n rows, m kolom", atau "n kolom, m rows").
Tugas 1:
Buat (dan output / print) vektor / daftar yang terdiri dari unsur-unsur: n, n+1 ... m-1, m. Jadi, untuk n=4, m=9, Anda harus output: 4,5,6,7,8,9.
Tugas 2:
Buat (dan hasilkan / cetak) matriks / array / daftar daftar (atau yang setara) yang terlihat seperti ini:
n, n+1, ... m-1, m
n+1, n+2, ... m-1, m+1
...
n+m, n+m+1, ... 2*m-1, 2*m
Untuk n=4, m=9Anda harus mengeluarkan:
4, 5, 6, 7, 8, 9
5, 6, 7, 8, 9, 10
...
13, 14, 15, 16, 17, 18
Tugas 3:
Buat (dan hasilkan / cetak) tabel perkalian n-by-m (pada format apa pun yang sesuai). Contoh untuk n=4, m=9:
1 2 3 4
2 4 6 8
3 6 9 12
4 8 12 16
5 10 15 20
6 12 18 24
7 14 21 28
8 16 24 32
9 18 27 36
Tugas 4:
Keluaran / cetak vektor / daftar yang terdiri dari elemen-elemen dalam tabel perkalian dari tugas 3, diurutkan dalam urutan menaik, menjaga nilai duplikat. Untuk n=4, m=9, Anda harus output: 1, 2, 2, 3, 3, 4, 4, 4, 5, 6, 6, 6, 7, 8, 8, 8, 9, 9, 10, 12, 12, 12, 14, 15, 16, 16, 18, 18, 20, 21, 24, 24, 27, 28, 32, 36.
Tantangan:
Sekarang, semua tugas di atas cukup sepele. Tantangan sebenarnya di sini adalah bahwa kode untuk tugas 2 harus dimulai dengan kode untuk tugas 1, kode untuk tugas 3 harus dimulai dengan kode untuk tugas 2 dan kode untuk tugas 4 harus dimulai dengan kode untuk tugas 3.
Untuk membuatnya lebih jelas:
Misalkan kode untuk Tugas 1 adalah (berfungsi dalam Oktaf):
@(n,m)(n:m)
Maka kode Anda untuk Tugas 2 dapat berupa (berfungsi dalam Oktaf):
@(n,m)(n:m)+(0:m)'
Kode untuk tugas Tugas 3 harus (tidak berfungsi dalam Oktaf):
@(n,m)(n:m)+(0:m)'"Code_for_task_3"
Dan akhirnya, kode untuk Tugas 4 harus (tidak berfungsi dalam Oktaf):
@(n,m)(n:m)+(0:m)'"Code_for_task_3""Code_for_task_4"
Ini adalah kode-golf , sehingga pengajuan dengan kode terpendek untuk tugas 4 di setiap bahasa menang. Seperti biasa: Penjelasan sangat dianjurkan.
0<n<matau 0<=n<m?
>2;sehingga kode tugas sebelumnya pada dasarnya diberikan no-op?