Na sequência ECG (que sempre começa com os números 1 e 2), cada número seguinte é o menor número que ainda não está presente na sequência e que compartilha um fator (excluindo 1) com o número anterior. Cada número da sequência ECG (exceto 1 e 2) tem um índice diferente de seu índice natural em uma sequência numérica normal. Veja o exemplo abaixo para estabelecer o índice ECG do 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 um inteiro n, implemente uma função que retorne seu índice na sequência ECG.
ecg_seq_index(3) ➞ 4
ecg_seq_index(5) ➞ 9
ecg_seq_index(7) ➞ 13p na sequência é precedido por 2p e seguido por 3p.