Introduction:
(Source: Wikipedia )
Quand on regarde un arc-en-ciel, il aura toujours les couleurs de haut en bas:
rouge; Orange; Jaune; vert; bleu; indigo; violet
Si nous regardons ces anneaux individuels, l'anneau rouge est bien sûr plus grand que l'anneau violet.
De plus, il est également possible d'avoir deux voire trois arc-en-ciel en même temps.
Tout cela combiné ci-dessus sera utilisé dans ce défi:
Défi:
Étant donné une liste d'entiers de taille exactement 7, où chaque valeur indique les particules de couleur disponibles pour former des arcs-en-ciel (où le plus grand indice indique le rouge et le plus petit indice indique le violet), affichez la quantité d'arcs-en-ciel qui peuvent être formés.
Un seul arc-en-ciel entier doit avoir au moins 3x violet, 4x indigo, 5x bleu, 6x vert, 7x jaune, 8x orange, 9x rouge. Un deuxième arc-en-ciel au-dessus sera encore plus grand que l'anneau rouge du premier arc-en-ciel (y compris un espace entre eux), il aura donc besoin d'au moins 11x violet, 12x indigo, 13x bleu, 14x vert, 15x jaune, 16x orange , 17x rouge en plus de ce que le premier arc-en-ciel utilise. Le troisième arc-en-ciel recommencera à 19x violet.
Exemple:
Liste d'entrées: [15,20,18,33,24,29,41]
Sortie:2
Pourquoi? Nous avons 15x violet, et nous avons besoin d'au moins 3 + 11 = 14 pour deux arcs-en-ciel. Nous avons 20 indigo et nous avons besoin d'au moins 4 + 12 = 16 pour deux arcs-en-ciel. Etc. Nous avons assez de couleurs pour deux arcs-en-ciel, mais pas assez pour former trois arcs-en-ciel, donc la sortie est 2
.
Règles du défi:
- Les entiers du tableau d'entrée sont garantis non négatifs (
>= 0
). - La liste d'entrées est garantie de taille 7 exactement.
- Quand aucun arc-en-ciel ne peut se former, nous sortons
0
. - Le format d'entrée et de sortie est flexible. Peut être une liste ou un tableau d'entiers de décimales, peut être extrait de STDIN. La sortie peut être un retour d'une fonction dans n'importe quel type de sortie raisonnable, ou imprimée directement sur STDOUT.
Quantité minimale de couleurs requise pour la n
quantité d'arcs-en-ciel:
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...
Règles générales:
- C'est le code-golf , donc la réponse la plus courte en octets l'emporte.
Ne laissez pas les langues de golf de code vous décourager de publier des réponses avec des langues non-golfeur de code. Essayez de trouver une réponse aussi courte que possible pour «n'importe quel» langage de programmation. - Des règles standard s'appliquent à votre réponse, vous êtes donc autorisé à utiliser STDIN / STDOUT, des fonctions / méthodes avec les paramètres appropriés et des programmes complets de type retour. Ton appel.
- Les failles par défaut sont interdites.
- Si possible, veuillez ajouter un lien avec un test pour votre code.
- De plus, l'ajout d'une explication à votre réponse est fortement recommandé.
Cas de test:
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
cas de bord cependant :( (cela ne correspond pas à la logique à 1 écart)