La formula
Prendi ad esempio il numero 300
- I fattori primi di 300 sono
[2, 3, 5]
(numeri univoci che sono fattori di 300 e primi) - Quadrare ciascuno di quei numeri ti darà
[4, 9, 25]
- Sommare quella lista ti darà
4 + 9 + 25 = 38
- Infine sottrai quella somma (38) dal tuo numero originale
300-38 = 262
(questo è il risultato)
Ingresso
Il tuo input sarà un numero intero positivo maggiore di 2. Devi controllare tutti i numeri da 2 al valore di input (incluso) e trovare il numero che produce il miglior risultato con la formula sopra.
Produzione
L'output sarà composto da due numeri separati da uno spazio, una virgola, una nuova riga o qualsiasi altra cosa consentita dalla lingua (la separazione è necessaria per distinguere i due numeri). Questi possono essere emessi in un file, stdout o qualunque cosa usi la tua lingua. Il tuo obiettivo è trovare il numero nell'intervallo che produce l'output massimo quando si esegue la formula sopra. Il primo numero visualizzato dovrebbe essere il numero iniziale (come 300) e il secondo numero dovrebbe essere l'output prodotto dalla formula (come 262)
Casi test
Input: 3 Output: 2, -2
Input: 10 Output: 8, 4
Input: 50 Output: 48, 35
Input: 1000 Output: 1000, 971
Input: 9999 Output: 9984, 9802
Ho lavorato attraverso l'esempio
Considera l'input di 10, dobbiamo eseguire la formula per tutti i numeri da 2-10 (incluso)
Num PrimeFacs PrimeFacs^2 SumPrimeFacs^2 Result
2 [2] [4] 4 -2
3 [3] [9] 9 -6
4 [2] [4] 4 0
5 [5] [25] 25 -20
6 [2, 3] [4, 9] 13 -7
7 [7] [49] 49 -42
8 [2] [4] 4 4
9 [3] [9] 9 0
10 [2, 5] [4, 25] 29 -19
Come puoi vedere, il risultato più grande è 4
stato il risultato dell'inserimento del valore 8
nella formula. Ciò significa che l'output per un input di 10
dovrebbe essere8, 4
Punteggio e regole
Le regole predefinite per gli ingressi e le uscite si applicano: di default per il codice Golf: metodi di input / output
Le scappatoie standard sono vietati: scappatoie che sono proibite dalla predefinite
Inseriti può essere funzioni o programmi completi
Vince il codice più breve in byte
50
: 35, 48
?