Étant donné une liste non vide d'entiers positifs , votre travail consiste à déterminer le nombre de valeurs uniques de± x ± y ± z ± …
Par exemple, considérez la liste . Il existe huit façons possibles de créer des sommes:
Il y a six sommes uniques , donc la réponse est .6
Cas de test
[1, 2] => 4
[1, 2, 2] => 6
[s]*n => n+1
[1, 2, 27] => 8
[1, 2, 3, 4, 5, 6, 7] => 29
[3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5] => 45
[1, 7, 2, 8, 3, 1, 6, 8, 10, 9] => 56
[93, 28, 92, 100, 43, 66, 2, 98, 2, 52, 57, 75, 39, 77, 45, 15, 13, 82, 81, 20, 68, 14, 5, 3, 72, 56, 57, 1, 23, 25, 76, 59, 60, 71, 71, 24, 1, 3, 72, 84, 72, 28, 83, 62, 66, 45, 21, 28, 49, 57, 70, 3, 44, 47, 1, 54, 53, 56, 36, 20, 99, 9, 89, 74, 1, 14, 68, 47, 99, 61, 46, 26, 69, 21, 20, 82, 23, 39, 50, 58, 24, 22, 48, 32, 30, 11, 11, 48, 90, 44, 47, 90, 61, 86, 72, 20, 56, 6, 55, 59] => 4728
Solution de référence (optimise la vitesse et non la taille).
Si vous ne pouvez pas gérer le dernier cas parce que vous utilisez une méthode de force brute ou similaire, ça va.
Notation
Il s'agit de code-golf , donc la solution valide la plus courte (mesurée en octets) l'emporte.
[2,2,2,2,...]
) la réponse doit être la longueur du tableau + 1. C'est parce que dans ce cas, la position des signes n'est pas pertinente et que le nombre de chaque matière