( relacionado )
Un Triple pitagórico es una lista (a, b, c)
que satisface la ecuación a 2 + b 2 = c 2 .
Un Triple pitagórico primitivo (PPT) es aquel donde a
, b
y c
son todos primos (es decir, el único divisor común entre los tres elementos es 1
). Por ejemplo, el (3, 4, 5)
triángulo rectángulo es un famoso Triple pitagórico primitivo.
El reto
- Dada la entrada
n
, salida deln
th PPT O, - Dada entrada
n
, salida los primerosn
PPT.
Hay varias formas de ordenar estos PPT para formar una lista bien ordenada, para determinar cuál es el n
th. Puede elegir el orden que desee, siempre que pueda probar (informalmente está bien) que su algoritmo puede generar todos los PPT únicos posibles. Por ejemplo, su código no debe generar ambos (3,4,5)
y, (4,3,5)
dado que son duplicados del mismo triple, uno u otro, por favor.
Del mismo modo, si su código está indexado a cero o uno está bien, siempre que indique cuál está utilizando.
Ejemplos
Para los ejemplos a continuación, estoy usando una indexación, generando el n
PPT y ordenando por el más pequeño c
, luego el más pequeño a
, luego el más pequeño b
.
n | output
1 | (3, 4, 5)
2 | (5, 12, 13)
5 | (20, 21, 29)
12| (48, 55, 73)
Reglas
- La entrada y la salida se pueden dar en cualquier formato conveniente .
- En su envío, indique cómo se ordenan sus entradas y si sus entradas están indexadas a 0 o indexadas a 1.
- Su pedido elegido no puede crear duplicados.
- Un programa completo o una función son aceptables. Si es una función, puede devolver el resultado en lugar de imprimirlo.
- Si es posible, incluya un enlace a un entorno de prueba en línea para que otras personas puedan probar su código.
- Las lagunas estándar están prohibidas.
- Este es el código de golf, por lo que se aplican todas las reglas habituales de golf, y gana el código más corto (en bytes).