( correlato )
Una tripla pitagorica è un elenco (a, b, c)
che soddisfa l'equazione a 2 + b 2 = c 2 .
Un triplo pitagorico primitivo (PPT) è uno in cui a
, b
e c
sono tutti coprimi (cioè, l'unico divisore comune tra i tre elementi è 1
). Ad esempio, il (3, 4, 5)
triangolo rettangolo è un famoso triplo pitagorico primitivo.
La sfida
- Dato input
n
, emette iln
th PPT. O, - Dato input
n
, output i primin
PPT.
Esistono diversi modi per ordinare questi PPT per formare un elenco ben ordinato, per determinare quale è il n
th. Puoi scegliere qualsiasi ordine tu desideri, purché tu possa provare (informalmente va bene) che il tuo algoritmo può generare ogni possibile PPT unico. Ad esempio, il tuo codice non dovrebbe generare entrambi (3,4,5)
e (4,3,5)
poiché questi sono duplicati della stessa tripla, l'uno o l'altro, per favore.
Allo stesso modo, se il tuo codice è zero o uno-indicizzato va bene, purché dichiari quale stai usando.
Esempi
Per gli esempi seguenti, sto usando l'indicizzazione uno, l'output del n
th PPT e l'ordinamento dal più piccolo c
, quindi il più piccolo a
, quindi il più piccolo b
.
n | output
1 | (3, 4, 5)
2 | (5, 12, 13)
5 | (20, 21, 29)
12| (48, 55, 73)
Regole
- L'input e l'output possono essere forniti in qualsiasi formato conveniente .
- Nel tuo invio, indica come vengono ordinate le voci e se le voci sono indicizzate 0 o 1.
- Il tuo ordine scelto non può creare duplicati.
- È accettabile un programma completo o una funzione. Se una funzione, è possibile restituire l'output anziché stamparlo.
- Se possibile, includi un collegamento a un ambiente di test online in modo che altre persone possano provare il tuo codice!
- Sono vietate le scappatoie standard .
- Si tratta di code-golf quindi si applicano tutte le normali regole del golf e vince il codice più breve (in byte).