Considera un triangolo ABC in cui ogni lato ha una lunghezza intera (un triangolo integrale ). Definire una mediana di ABC essere un segmento di linea da un vertice al punto medio del lato opposto. Nella figura seguente, i segmenti di linea rossa rappresentano le mediane. Nota che ogni dato triangolo ha tre mediane.
Sia n un numero intero positivo. Quanti triangoli integrali non degeneri con lunghezza di ciascun lato inferiore o uguale a n hanno almeno una mediana integrale?
Sfida
Scrivi un programma per calcolare il numero di triangoli integrali con almeno una mediana integrale per una data lunghezza laterale massima n . L'ordine delle lunghezze laterali non ha importanza, ovvero <6,6,5> rappresenta lo stesso triangolo di <5,6,6> e deve essere conteggiato una sola volta. Escludere triangoli degeneri come <1,2,3>.
punteggio
Il più grande n per cui il tuo programma può generare il numero di triangoli in 60 secondi sulla mia macchina è il tuo punteggio. Vince il programma con il punteggio più alto. La mia macchina è una Sony Vaio SVF14A16CLB, Intel Core i5, 8 GB di RAM.
Esempi
Let T ( N ) sia il programma con ingresso N .
T(1) = 0
T(6) = 1
T(20) = 27
T(22) = 34
Si noti che T (1) = T (2) = T (3) = T (4) = T (5) = 0 perché nessuna combinazione di lati integrali produrrà una mediana integrale. Tuttavia, una volta arrivati a 6, possiamo vedere che una delle mediane del triangolo <5,5,6> è 4, quindi T (6) = 1.
Si noti inoltre che T (22) è il primo valore a cui il doppio conteggio diventa un problema: il triangolo <16,18,22> ha mediane 13 e 17 (e 2sqrt (85)).
Calcolo delle mediane
Le mediane di un triangolo possono essere calcolate con le seguenti formule:
Current top score: Sp3000 - 7000 points - C