introduction
La séquence ECG commence par 1 et 2, puis la règle est que le terme suivant est le plus petit entier positif qui ne figure pas déjà dans la séquence et dont le facteur commun avec le dernier terme est supérieur à 1 (ils ne sont pas des nombres premiers).
Les premiers termes sont:
1, 2, 4, 6, 3, 9, 12, 8, 10, 5, 15, ...
C'est ce qu'on appelle l'électrocardiogramme parce que le graphique de ses termes est assez similaire à un électrocardiogramme.
C'est la séquence A064413 dans l'OEIS .
Défi
Vous devez écrire une fonction qui prend un entier n en entrée et affiche combien de n premiers termes de la séquence sont supérieurs à n .
Comme la règle de la séquence commence par le troisième terme, l'entier d'entrée doit être supérieur ou égal à 3. Par exemple, pour une entrée donnée, 10
la sortie est 1
due au fait que le 7e terme est 12
et qu'aucun des dix premiers termes ne dépasse 10.
Cas de test
3 -> 1
10 -> 1
100 -> 9
1000 -> 70
Règles
- Pour les entiers inférieurs à 3, la fonction peut sortir 0 ou un code d'erreur.
- Pas d'autres règles particulières sauf: c'est du golf de code, le plus court sera le mieux!
1
étant le 0ème terme de la séquence et donc faire, par exemple,15
le 10ème terme, plutôt que5
?