Défi
Étant donné une liste, déterminez si le regroupement de la liste en séries d'éléments croissants et décroissants se traduira par une liste de listes de taille égale.
En d'autres termes, les «points tournants» de la liste sont régulièrement espacés.
Exemple
Voici un exemple: 0, 3, 7, 5, 2, 3, 6
0, 3, 7
augmente, 7, 5, 2
diminue et 2, 3, 6
augmente. C'est donc vrai.
Un autre exemple: 1, 4, 6, 8, 5, 3, 5, 7, 9
1, 4, 6, 8
augmente, 8, 5, 3
diminue et 3, 5, 7, 9
augmente. C'est donc de la fausse.
Règles et spécifications
- Aucun élément adjacent ne sera égal
- Tous les numéros peuvent être supposés être dans la plage de numéros raisonnable de votre langue
- Vous pouvez supposer que tous les nombres sont des nombres entiers, si cela vous aide à jouer votre soumission
- C'est le golf de code , donc la réponse la plus courte l'emporte
- Entrée sous forme de liste dans toute représentation raisonnable et sortie sous forme de toute valeur véridique / fausse. Les deux valeurs doivent être cohérentes.
Cas de test
Input -> Output
1, 3, 5, 8, 6, 4, 2, 3, 5, 7, 6, 4, 2, 5, 7, 9, 6, 4, 2 -> True
1, 3, 5, 7, 6, 4, 5, 7, 9, 8, 6, 4, 2, 3, 5 -> False
2, 3, 6, 4, 2, 3, 7, 5, 3, 4, 6 -> True
3, 6, 4, 8, 5, 7, 3, 5, 2 -> True
8 -> True
1, 3, 5, 7 -> True
4, 5, 7, 6, 8, 9 -> False
6, 4, 2, 3, 5, 4, 2 -> True
8, 5, 3, 2, 4, 6, 5, 3, 2, 5, 7 -> False
Remarque : Vous ne pouvez pas supposer que tous les numéros sont à un seul chiffre (sauf si c'est tout ce que votre langue est capable de gérer); les cas de test reflètent cela simplement parce qu'il m'est plus facile de taper les cas de cette façon: P Voici quelques cas de test avec des nombres en dehors de cette plage:
1, 5, 10, 19, 15, 13, 8, 13, 18, 23, 19, 18, 14 -> True
15, 14, 17, 16, 19, 18 -> True
12, 16, 19, 15, 18, 19 -> False
1, 2, 3, 2
une entrée valide, et si cela est considéré comme vrai ou faux? Dans cet exemple, la valeur suivante étant un 1 le rendrait vrai, mais un 3 le rendrait faux.