Bu, başka bir bulmacanın, bir "muadili" dir adil kral için Sekiz sikke Puzzling.SE üzerinde.
Yukarıdaki bulmacayı arka plan için okuyabilirsiniz. Bu yapbozun detayları aşağıdaki gibidir.
Farklı değerlerde 8 çeşit madeni para seti oluşturulur, kral, maksimum N'yi bulmanızı ister, böylece 0'dan N'ye kadar olan herhangi bir fiyat, en fazla 8 madeni paradan oluşan bir kombinasyonla ve masrafsız olarak ödenebilir.
Örneğin, (Glorfindel'in cevabından alınmıştır). 1, 2, 5, 13, 34, 89, 233, 610 değerlerine sahip bir madeni para seti verilirse, programınız 1596 vermelidir, çünkü 0 ile 1596 arasındaki her sayı (dahil) artıkların toplamı ile gösterilemez. verilen listedeki 8 sayıdan (sayı tekrarlanabilir), 1597 bu şekilde temsil edilemez.
Giriş, bir dizi 8 pozitif tamsayılar oluşan S ise, matematiksel bir şekilde, arzu edilen çıkış N tatmin herhangi bir sayıda söz konusu n 0 ve N arasında, x1, x2, x3, ..., x8 böyle vardır
Amacınız, giriş olarak 8 sayı alan bir program, bir işlev veya snippet yazmak ve yukarıda tanımlandığı gibi maksimum N değerini vermektir.
Kurallar:
- Esnek I / O izinli, bu nedenle programınız girişi en uygun olan herhangi bir biçimde alabilir. Giriş numaralarının programınıza en uygun şekilde sıralandığını varsayabilirsiniz.
- Programın giriş sırasına bağlı olup olmadığını lütfen cevabınıza yazınız
- Giriş, 8 farklı pozitif tamsayı kümesidir (sıfır yok). Çıktı negatif olmayan bir tamsayıdır.
- Giriş kümesinde 1 yoksa, programınız 0 vermelidir, çünkü 0 ile 0 arasındaki herhangi bir sayı gereksinimi karşılar.
- Geçersiz giriş olması durumunda (set sıfır, negatif veya yinelenen sayılar içerir), programınız her şeyi yapabilir.
- Standart boşluklar yasaktır.
- Programınız birkaç dakika içinde modern bir bilgisayarda çalıştırılmalıdır.
Test durumları (çoğunlukla Şaşırtma ile ilgili sorunun altındaki cevaplardan alınmıştır):
[1, 2, 3, 4, 5, 6, 7, 8] => 64
[2, 3, 4, 5, 6, 7, 8, 9] => 0
[1, 3, 4, 5, 6, 7, 8, 9] => 72
[1, 2, 5, 13, 34, 89, 233, 610] => 1596
[1, 5, 16, 51, 130, 332, 471, 1082] => 2721
[1, 6, 20, 75, 175, 474, 756, 785] => 3356
Bu bir kod golf , yani her dilde en kısa program veya kod parçası kazanıyor!