Giriş:
(Kaynak: Wikipedia )
Bir gökkuşağına baktığımızda her zaman yukarıdan aşağıya renkleri olacaktır:
Kırmızı; Portakal; Sarı; yeşil; mavi; indigo; menekşe
Bu ayrı halkalara bakarsak, kırmızı halka elbette menekşe halkadan daha büyüktür.
Ayrıca, aynı anda iki hatta üç gökkuşağına sahip olmak da mümkündür.
Yukarıdaki tüm bunlar bu meydan okumada kullanılacaktır:
Meydan okuma:
Tam olarak 7 boyutundaki tamsayıların bir listesi verildiğinde, her bir değer gökkuşağı oluşturmak için mevcut renk parçacıklarını gösterir (en büyük dizin kırmızıyı ve en küçük endeksi menekşe gösterir), oluşabilecek gökkuşağı miktarını verir.
Tek bir tam sayı-gökkuşağı en az 3x menekşe, 4x çivit mavisi, 5x mavi, 6x yeşil, 7x sarı, 8x turuncu, 9x kırmızı olmalıdır. Üstündeki ikinci bir gökkuşağı ilk gökkuşağının kırmızı halkasından bile daha büyük olacak (aralarındaki bir boşluk dahil), bu yüzden en az 11x menekşe, 12x indigo, 13x mavi, 14x yeşil, 15x sarı, 16x turuncuya ihtiyaç duyacak , İlk gökkuşağının kullandığı şeye ek olarak 17x kırmızı. Üçüncü gökkuşağı yine 19x menekşe ile başlayacak.
Misal:
Girdi listesi: [15,20,18,33,24,29,41]
Çıktı:2
Neden? 15x menekşemiz var ve iki gökkuşağı için en az 3 + 11 = 14 lazım. 20 indigo'muz var ve iki gökkuşağı için en az 4 + 12 = 16'ya ihtiyacımız var. Vb İki gökkuşağı için yeterli renk var, ancak üç gökkuşağı oluşturmak için yeterli değil, bu yüzden çıktı 2
.
Zorluk kuralları:
- Girdi dizisindeki tamsayıların negatif olmadığı garanti edilir (
>= 0
). - Giriş listesinin tam olarak 7 boyutta olması garanti edilir.
- Gökkuşağı oluşmadığında çıktı alırız
0
. - Giriş ve çıkış formatları esnektir. Ondalık sayıların tam listesi veya dizisi olabilir, STDIN'den alınabilir. Çıktı, herhangi bir makul çıktı türündeki bir işlevden geri dönüş olabilir veya doğrudan STDOUT'a yazdırılabilir.
n
Gökkuşağı miktarı için gereken minimum renk miktarı:
Amount of Rainbows Minimum amount per color
0 [0,0,0,0,0,0,0]
1 [3,4,5,6,7,8,9]
2 [14,16,18,20,22,24,26]
3 [33,36,39,42,45,48,51]
4 [60,64,68,72,76,80,84]
5 [95,100,105,110,115,120,125]
etc...
Genel kurallar:
- Bu kod golf , bayt en kısa cevap kazanır.
Kod golf dillerinin, kod yazmayan dillerle yanıt göndermenizi engellemesine izin vermeyin. 'Herhangi bir' programlama dili için mümkün olduğunca kısa bir cevap bulmaya çalışın. - Cevabınız için standart kurallar geçerlidir , bu nedenle STDIN / STDOUT, fonksiyonlar / yöntem uygun parametreler ve dönüş tipi, tam programlar ile kullanılabilir. Çağrınız.
- Varsayılan Loopholes yasaktır.
- Mümkünse, lütfen kodunuz için test içeren bir bağlantı ekleyin.
- Ayrıca, cevabınız için bir açıklama eklemeniz şiddetle tavsiye edilir.
Test senaryoları:
Input: [15,20,18,33,24,29,41]
Output: 2
Input: [3,4,5,6,7,8,9]
Output: 1
Input: [9,8,7,6,5,4,3]
Output: 0
Input: [100,100,100,100,100,100,100]
Output: 4
Input: [53,58,90,42,111,57,66]
Output: 3
Input: [0,0,0,0,0,0,0]
Output: 0
Input: [95,100,105,110,115,120,125]
Output: 5
Input: [39525,41278,39333,44444,39502,39599,39699]
Output: 98
0,0,0,0,0,0,0
Kenar durum olsa :( (o 1-boşluk mantığı ile uymuyorsa)