Inspirasi untuk ini teka-teki kode golf adalah Jembatan dan Torch masalah , di mana d orang pada awal jembatan semua harus menyeberang dalam jumlah sedikit waktu.
Tangkapannya adalah bahwa paling banyak dua orang dapat menyeberang sekaligus, jika tidak jembatan akan hancur karena beratnya, dan kelompok hanya memiliki akses ke satu obor, yang harus dibawa untuk menyeberangi jembatan.
Setiap orang di seluruh teka-teki memiliki waktu yang ditentukan untuk berjalan melintasi jembatan. Jika dua orang saling bersilangan, pasangan berjalan selambat orang paling lambat.
Tidak ada jumlah orang yang harus menyeberangi jembatan; solusi Anda HARUS bekerja untuk nilai d .
Anda tidak perlu menggunakan input standar untuk masalah ini, tetapi demi menjelaskan masalah, saya akan menggunakan format input dan output berikut untuk penjelasan. Angka pertama, d , adalah jumlah orang di awal jembatan. Kemudian, kode akan memindai angka d , masing-masing mewakili kecepatan seseorang.
Output kode akan menjadi jumlah waktu TERAKHIR yang diperlukan untuk melintasi semua orang dari awal jembatan ke ujung jembatan, sementara memenuhi kriteria yang dijelaskan sebelumnya.
Berikut adalah beberapa kasus input dan kasus output dan penjelasan untuk kasus input pertama. Terserah kepada Anda untuk memperoleh algoritma dari informasi ini untuk menyelesaikan masalah dalam byte kode sesedikit mungkin.
memasukkan
4
1 2 5 8
keluaran
15
Untuk mencapai hasil ini, orang-orang harus menyeberang dengan cara berikut.
A and B cross forward (2 minutes)
A returns (1 minute)
C and D cross forward (8 minutes)
B returns (2 minutes)
A and B cross forward (2 minutes)
Berikut ini adalah test case lain untuk memandu Anda.
memasukkan
5
3 1 6 8 12
keluaran
29
Aturan:
- Asumsikan bahwa input tidak akan diurutkan, dan Anda harus melakukannya sendiri (jika perlu)
- Jumlah orang dalam puzzle tidak tetap pada 4 (N> = 1)
- Setiap kelompok dan persilangan individu harus memiliki obor. Hanya ada satu obor.
- Setiap grup harus terdiri dari maksimal hanya 2 orang!
- Tidak, Anda tidak boleh melompat dari jembatan dan berenang ke sisi lain. Tidak ada trik lain seperti ini;).
1 4 5 6 7memiliki masalah serupa. 25 vs 26
N >= 2orang (artinya, anehnya itu pekerjaan ekstra untuk menangani kasus sepele "1 orang perlu menyeberang"), sehingga beberapa klarifikasi tentang hal ini akan menjadi besar. Terima kasih sebelumnya.
1 3 4 5, yang seharusnya mengembalikan 14 bukan 15.