La secuencia ECG

En la secuencia ECG (que siempre comienza con los números 1 y 2), cada número que sigue es el menor que aún no está presente en la secuencia y que comparte un factor (excluyendo 1) con el número anterior. Cada número de la secuencia ECG (excepto 1 y 2) tiene un índice diferente de su índice natural en una secuencia numérica normal. Consulta el ejemplo siguiente para establecer el índice ECG del número 3.

# Find the smallest number that is not in sequence...
# This number shares a factor with the preceding?

SEQUENCE = [1, 2]

3 = no factors shared with 2
4 = shares factor 2 with number 2

SEQUENCE = [1, 2, 4]

3 = no factors shared with 4
5 = no factors shared with 4
6 = shares factor 2 with number 4

SEQUENCE = [1, 2, 4, 6]

3 = shares factor 3 with number 6

SEQUENCE = [1, 2, 4, 6, 3]

Number 3 is at index 4 in the ECG Sequence.

Dado un entero n, implementa una función que devuelva su índice en la secuencia ECG.

Ejemplos

ecg_seq_index(3) ➞ 4

ecg_seq_index(5) ➞ 9

ecg_seq_index(7) ➞ 13

Notas

  • ECG es el acrónimo de electrocardiograma: si intentas representar gráficamente la tendencia de la secuencia, aparece un esquema similar.
  • Curiosidad: cada primo impar p de la secuencia está precedido por 2p y seguido por 3p.