Um triplo pitagórico consiste em três números inteiros positivos a, bec, de modo que a 2 + b 2 = c 2 . Esse triplo é comumente escrito (a, b, c) e um exemplo bem conhecido é (3, 4, 5). Se (a, b, c) é um triplo pitagórico, o mesmo acontece com (ka, kb, kc) para qualquer número inteiro positivo k. Um triplo pitagórico primitivo é aquele em que a, bec são coprimes .
Usando esse conhecimento, podemos criar uma sequência encadeando os menores comprimentos de triplos, onde o próximo elemento na sequência é a hipotenusa (maior número) do menor triplo pitagórico primitivo menor que contém o elemento anterior como o menor de seus comprimentos.
Comece com o menor triplo pitagórico primitivo (3, 4, 5). A sequência começa com 3
, e a hipotenusa (próximo elemento da sequência) é 5
. Em seguida, encontre o menor triplo pitagórico primitivo com 5
uma perna e você obtém (5, 12, 13). Então a sequência continua com 13
.
Faça a saída da sequência para sempre ou pegue uma entrada inteira n
e faça a saída dos primeiros n
elementos da sequência, zero ou um indexado.
Você precisa oferecer suporte à saída pelo menos através e inclusive 28455997
, mas se o limite do tipo de dados que você está usando for subitamente aumentado, ele precisará trabalhar para esse novo limite. Portanto, você não pode codificar uma lista de números.
3
5
13
85
157
12325
90733
2449525
28455997
295742792965
171480834409967437
656310093705697045
1616599508725767821225590944157
4461691012090851100342993272805
115366949386695884000892071602798585632943213
12002377162350258332845595301471273220420939451301220405
Sequências semelhantes (não as produzam!):
12325
.
85
... seu próximo mandato é 3613
(você pode adivinhar o que é ainda?)