D: Tester si une fonction de parking est correcte

Vous venez d'ouvrir un parking privé de N places, numérotées de 1 a N, et vous avez demandé à vos N clients de choisir chacun une place favorite, sans connaître les choix des autres clients (donc deux clients peuvent choisir la même place comme place favorite) : le client 1 (qui se gare toujours en premier au parking) choisit une place notée P(1), le client 2 (qui se gare toujours en second au parking) une place P(2), ..., le client N (qui se gare toujours en dernier) une place P(N). De plus, de manière à accélérer le placement des voitures, vous imposez la règle suivante pour tous les clients :

Considérant qu'un client devant sortir du parking car aucune place n'est libre est mécontent vous voulez vous assurer que les choix faits par les clients sont tels que cette situation n'arrivera pas.

Entrée

L'entrée du problème sera constituée de nombres décrivant le nombre de clients et les choix de ces clients. Cette description prend la forme suivante : un entier indiquant le nombre N de clients, suivi de N entiers (chacun compris entre 1 et N) décrivant les choix des clients (le premier est P(1), le second P(2), ..., le Nième P(N)). On suppose que l'entré est correcte. On impose de plus que ces N+1 nombres soient entrés en un seule ligne se terminant par un retour charriot avec un seul espace entre deux nombres et aucun espace superflu au début ou à la fin de la ligne.

Sortie

La sortie attendue est soit le mot oui (si aucun client ne sort du parking par manque de place) soit le mot non (si au moins un client a du sortir du parking), sans espace superflu avant ou après suivi d'un retour chariot.

Exemple 1

Exemple d'entrée

8 1 4 4 2 3 5 8 5

Exemple de sortie

oui

Exemple 2

Exemple d'entrée

8 1 4 4 2 8 5 7 5

Exemple de sortie

non