La formule
Prenez par exemple le nombre 300
- Les facteurs premiers de 300 sont
[2, 3, 5]
(les nombres uniques qui sont des facteurs de 300 et premiers) - La mise au carré de chacun de ces nombres vous donnera
[4, 9, 25]
- La sommation de cette liste vous donnera
4 + 9 + 25 = 38
- Enfin soustrayez cette somme (38) de votre nombre d'origine
300-38 = 262
(c'est le résultat)
Contribution
Votre entrée sera un entier positif supérieur à 2. Vous devez vérifier tous les nombres de 2 à la valeur d'entrée (incluse) et trouver le nombre qui produit le meilleur résultat avec la formule ci-dessus.
Production
Votre sortie sera composée de deux nombres séparés par un espace, une virgule, un retour à la ligne ou tout ce que votre langue permet (la séparation est nécessaire pour distinguer les deux nombres). Ceux-ci peuvent être exportés vers un fichier, une sortie standard ou tout ce que votre langue utilise. Votre objectif est de trouver le nombre dans la plage qui produit la sortie maximale lors de l'exécution de la formule ci-dessus. Le premier nombre affiché doit être le nombre de départ (comme 300) et le deuxième nombre doit être la sortie produite par la formule (comme 262)
Cas de 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
Exemple travaillé
Considérez l'entrée de 10, nous devons exécuter la formule pour tous les nombres de 2 à 10 (inclus)
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
Comme vous pouvez le voir, le meilleur résultat est le 4
résultat de la saisie de la valeur 8
dans la formule. Cela signifie que la sortie d'une entrée de 10
doit être8, 4
Notation et règles
Les règles par défaut pour les entrées et sorties s'appliquent: Par défaut pour Code Golf: Méthodes d'entrée / sortie
Les failles standard sont interdites: Les failles interdites par défaut
Les soumissions peuvent être des fonctions ou des programmes complets
Le code le plus court en octets gagne
50
: 35, 48
?