Description du défi
Une sous -séquence monotone est une séquence de nombres [a1, a2, ..., an]telle que
a1 <= a2 <= ... <= anou a1 >= a2 >= ... >= an. [1, 3, 3, 7, 9, 13, 13, 100]est une sous-séquence monotone (non décroissante), ainsi que [9, 4, 4, 3, 0, -10, -12](celle-ci n'est pas croissante), mais [1, 3, 6, 9, 8]ne l'est pas. Étant donné une liste d'entiers (dans n'importe quel format raisonnable), affichez le plus petit nombre de Nsorte que la séquence de ces entiers puisse être divisée en Nséquences monotones.
Exemples
[1, 3, 7, 5, 4, 2] -> [[1, 3, 7], [5, 4, 2]] -> 2
[1, 2, 3, 4, 5, 6] -> [1, 2, 3, 4, 5, 6] -> 1
[3, 1, 5, 5, 6] -> [[3, 1], [5, 5, 6]] -> 2
[4, 6, 8, 9, 1, 6] -> [[4, 6, 8, 9], [1, 6]] -> 2
[3, 3, 3, 3] -> [[3, 3, 3, 3]] -> 1
[7] -> [[7]] -> 1
[] -> [] -> anything (you don't actually have to handle an empty list case)
[1, 3, 2, -1, 6, 9, 10, 2, 1, -12] -> [[1, 3], [2, -1], [6, 9, 10], [2, 1, -12]] -> 4
[4,4,8,8,1,4,5] -> 2
0 / undefined, il semble que ce devrait être 0 ou la représentation de undefineddans notre langue, mais d'après votre commentaire sur la réponse Jelly de Jonathan Allan, cela ressemble à des undefinedmoyens anything... Lequel est-ce? ? Dans le deuxième cas, je suggère d'écrire anythingau lieu deundefined