pengantar
Ada perkebunan yang didefinisikan oleh satu papan persegi besar seperti ini:
Angka-angka di dalam setiap kotak kecil mewakili nilai area / uang tunai / ...
Petani membutuhkan bantuan untuk menemukan kotak N yang terhubung (itu berarti semua kotak N harus memiliki setidaknya satu perbatasan bersama) memberinya nilai terbesar.
Sebagai contoh:
Jika N=1
, maka outputnya harus 140
.
Kalau N=6
begitu ..
..suatu output harus 315
.
Tantangan
Program / fungsi Anda harus mengambil nilai-nilai matriks dan angka N sebagai input / argumen dan harus menampilkan nilai koneksi yang kuat .
Karena ini adalah kode-golf , jawaban tersingkat dalam byte menang!
Contohnya
Memasukkan:
10 -7 11 7 3 31
33 31 2 5 121 15
22 -8 12 10 -19 43
12 -4 54 77 -7 -21
2 8 6 -70 109 1
140 3 -98 6 13 20
6
Keluaran: 315
Memasukkan:
35 -7
-8 36
2
Keluaran: 29
Jawaban:
JavaScript (ES6), 190 byte
Penjelasan
Mengambil matriks sebagai array array.
Mulai dari setiap kotak kemudian menggunakan fungsi rekursif untuk menguji setiap kemungkinan kombinasi. Ini adalah pendekatan brute-force, tetapi hampir selesai secara instan untuk test case pertama pada mesin saya.
Uji
sumber