Escreva um programa para determinar se uma sequência periódica de números inteiros positivos tem a propriedade de que, para cada número inteiro que n
ocorre na sequência, nunca há mais do quen
outros números inteiros entre duas ocorrências consecutivas de n
.
Por exemplo, 2, 3, 5, 2, 3, 6, 2, 3, 5, 2, 3, 6, ...
possui esta propriedade: todo par de ocorrências consecutivas de 2
no máximo dois números inteiros entre eles (como 2, 3, 5, 2
e 2, 3, 6, 2
; todo par de ocorrências consecutivas de 3
no máximo três números inteiros entre eles; e o mesmo para5
e 6
.
No entanto, 2, 3, 5, 2, 3, 4, 2, 3, 5, 2, 3, 4, ...
não possui essa propriedade: duas ocorrências consecutivas de 4
, a saber4, 2, 3, 5, 2, 3, 4
, possuem mais de quatro números inteiros entre elas.
Entrada : uma representação razoável de uma sequência periódica de números inteiros positivos. Por exemplo, uma lista finita como {2, 3, 5, 2, 3, 6}
pode representar a primeira sequência infinita2, 3, 5, 2, 3, 6, 2, 3, 5, 2, 3, 6, ...
acima. (Nesse caso, o problema pode ser indicado para listas finitas que são agrupadas em vez de para listas periódicas infinitas.)
Saída : um valor de verdade / falsidade.
Exemplos de verdade:
{1}
{8, 9}
{2, 3, 4}
{5, 5, 3, 3, 6}
{2, 3, 5, 2, 3, 6}
{6, 7, 3, 5, 3, 7}
{9, 4, 6, 7, 4, 5}
{1, 1, 1, 1, 1, 100, 1}
{1, 9, 1, 8, 1, 7, 1, 11}
Exemplos de falsidade:
{1, 2, 3}
{2, 3, 9, 5}
{3, 5, 4, 4, 6}
{2, 3, 5, 2, 3, 4}
{3, 5, 7, 5, 9, 3, 7}
{5, 6, 7, 8, 9, 10, 11}
{1, 9, 1, 8, 1, 6, 1, 11}
Isso é codegolf , então o código mais curto vence. Respostas em todas as línguas são encorajadas.