Ini adalah yang kedua dalam seri, yang ketiga adalah Dua jalan yang dibelah dalam kayu kuning (bagian 3)
Ini didasarkan pada Dua jalan yang menyimpang dari kayu kuning (bagian 1) , tantangan tambang sebelumnya. Itu diterima dengan cukup baik, tetapi juga cukup sepele (jawaban Java dalam 52 byte!) Jadi saya membuat sesuatu yang lebih kompleks ...
Inspirasi
Tantangan ini terinspirasi oleh puisi terkenal Robert Frost, "The Road Not Taken":
Dua jalan bercabang di kayu kuning,
Dan maaf aku tidak bisa melakukan keduanya.
Dan menjadi satu pengembara, aku berdiri lama
Dan melihat ke bawah sejauh yang aku bisa
Ke tempat itu membungkuk di semak-semak;... 2 paragraf dipangkas ...
Saya akan mengatakan ini dengan menghela nafas
Di suatu tempat berabad-abad karena itu:
Dua jalan menyimpang dalam sebuah hutan, dan saya -
saya mengambil satu yang kurang dilalui oleh,
Dan itu telah membuat semua perbedaan.
Perhatikan baris kedua hingga terakhir I took the one less traveled by,
,. Tujuan Anda adalah menemukan jalan yang paling jarang dilalui oleh input string Anda. Anda harus menampilkan salah satu dari 2 nilai yang berbeda satu sama lain yang memberi sinyal ke arah mana Anda harus berbelok untuk menempuh jalan yang jarang dilalui. Setelah persimpangan jalan (jejak heksagon berubah menjadi angka), Anda berada di persimpangan. Dari sana, akan ada 2 jalur yang terdiri dari angka. Jalur yang digit-nya memiliki jumlah terendah adalah jalan yang tidak diambil. Perhatikan bahwa jalan yang tidak diambil mungkin memiliki jalur yang lebih besar tetapi jumlah jalur yang lebih rendah. Berikut adalah beberapa contoh / kasus uji dari program yang mencetak "kiri" atau "kanan" untuk jalur yang tidak diambil:
1 2
1 2
1 2
#
#
#
left (3 < 6)
1 2
2 2
1 1
#
#
#
left (4 < 5)
12 2
11 2
1 1
#
#
#
right (6 > 5)
99 989
99 89
99 99
99 99
#
#
#
#
left (72 < 79)
1111 1110
001 111
11 11
11 11
#
##
##
##
left (9 < 10) (Note: 1111 is interpreted as 1+1+1+1=4, not 1111=1111)
1 1
0 1
1 1
1 1
1 1
1 1
1 1
#
#
#
#
#
left (6 < 7)
1 1
0 1
1 1
1 1
1 1
1 1
1 1
#
#
#
#
#
left (6 < 7)
Hal-hal untuk diasumsikan & diingat
- Akan selalu ada 2 jalur. Tidak lebih, tidak kurang.
- Anda dapat mengambil input dari STDIN satu baris pada satu waktu, string yang berisi karakter LF, atau string yang berisi backslash literal dan n. Jika Anda membutuhkan input dengan cara lain, mintalah persetujuan dalam komentar.
- Anda tidak perlu khawatir tentang input yang tidak valid atau jalur yang diikat. Itu tidak akan pernah dimasukkan ke program / fungsi Anda.
- Input dapat berupa panjang atau lebar apa pun, kurang dari batas string bahasa Anda.
- Tidak akan pernah ada
#
dan nomor di baris yang sama. - Semua digit di jalur adalah bilangan bulat positif 0 hingga 9.
- Input atau output dengan baris baru tambahan diperbolehkan.
- Lihat jawaban JS ES6 saya di bawah ini untuk contoh.
- Akan selalu ada setidaknya 1 ruang antara 2 jalur.
- 2 jalur akan selalu memiliki ketinggian yang sama untuk setiap peta, tetapi mungkin berbeda pada peta lainnya.
- Jika Anda bingung tentang kasus uji tertentu, tolong beri tahu saya.
- 1111 ditafsirkan sebagai 1 + 1 + 1 + 1 = 4, bukan 1111 = 1111. Peta ini adalah serangkaian angka satu digit, bukan angka dengan panjang sewenang-wenang.
- Ini kode-golf , jadi jawaban tersingkat dalam byte menang!
- Celah standar dilarang
Jika Anda memiliki pertanyaan tentang tantangan ini, tanyakan pada saya di komentar, dan semoga berhasil!
let answers = $('div > h1').map(function(){return $(this).clone().children(':not(a)').remove().end().text().replace(/\s+/g,' ').trim()}).get();answers.splice(0, 1);answers.join('\n');
$("div > h1").map(function(){return $(this).text()}).get().join("\n");
ke konsol Anda!