Uma sequência aritmético-geométrica é o produto elementar de uma sequência aritmética e uma sequência geométrica. Por exemplo, 1 -4 12 -32
é o produto da sequência aritmética 1 2 3 4
e da sequência geométrica 1 -2 4 -8
. O enésimo termo de uma sequência aritmético-geométrica inteira pode ser expresso como
por algum número real , diferente de zero reais , e inteiro . Note-se que e não são necessariamente inteiros.
Por exemplo, a sequência 2 11 36 100 256 624 1472 3392
tem , , e .
Entrada
Uma lista ordenada de números inteiros como entrada em qualquer formato razoável. Como algumas definições de sequência geométrica permitem e definem , se uma entrada é uma sequência aritmético-geométrica não dependerá da possibilidade de ser 0. Por exemplo, 123 0 0 0 0
não ocorrerá como entrada.
Resultado
Se é uma sequência aritmético-geométrica. Emita um valor de verdade / falsidade ou dois valores consistentes diferentes.
Casos de teste
Verdade:
1 -4 12 -32
0 0 0
-192 0 432 -1296 2916 -5832 10935 -19683
2 11 36 100 256 624 1472 3392
-4374 729 972 567 270 117 48 19
24601 1337 42
0 -2718
-1 -1 0 4 16
2 4 8 16 32 64
2 3 4 5 6 7
0 2 8 24
Falso:
4 8 15 16 23 42
3 1 4 1
24601 42 1337
0 0 0 1
0 0 1 0 0
1 -1 0 4 16
fonte
\$
para escrever coisas como .1 -1 0 4 16
seria um caso False útil, pois compartilha quatro elementos consecutivos com cada um dos casos True1 -1 0 4 -16
e-1 -1 0 4 16
.Respostas:
Perl 6 ,
184128135 bytesExperimente online!
Algumas melhorias são inspiradas na resposta JavaScript de Arnauld.
Explicação
fonte
JavaScript (ES7),
135127 bytesExperimente online!
Quão?
Caso especial nº 1: menos de 3 termos
Se houver menos de três termos, é sempre possível encontrar uma sequência correspondente. Então, forçamos um valor verdadeiro.
Caso especial nº 2: apenas zeros
Que dá:
Temos notavelmente:
Levando ao seguinte quadrático:
Cujas raízes são:
fonte
Wolfram Language (Mathematica) , 55 bytes
Experimente online!
Solve
retorne todos os formulários da solução. O resultado é comparado com{}
para verificar se há alguma solução.fonte