Tous les défis
Moyen 0 résolus 0 % de réussite

Plus grand facteur premier

Trouver le plus grand nombre premier qui divise un entier positif.

Un nombre premier est un entier strictement supérieur à 1 qui n'a pas d'autres diviseurs positifs que 1 et lui-même. Trouvez le plus grand facteur premier de n. Si n est lui-même premier, retournez n.

Implémentez largest_prime_factor(n).

Entrée

n : L'entier à factoriser.

Sortie

Retournez son plus grand diviseur premier.

Contraintes

2 ≤ n ≤ 10¹². L'entrée 1 est exclue car elle n'a pas de facteur premier.

Exemples

Exemple 1
Entrée :
n = 84

Sortie attendue :
expected = 7
Entrée :
long long n = 84;

Sortie attendue :
long long expected = 7;
Entrée :
long n = 84;

Sortie attendue :
long expected = 7;

Explication

84 = 2 × 2 × 3 × 7, donc le plus grand facteur premier est 7.

Exemple 2
Entrée :
n = 13

Sortie attendue :
expected = 13
Entrée :
long long n = 13;

Sortie attendue :
long long expected = 13;
Entrée :
long n = 13;

Sortie attendue :
long expected = 13;

Explication

13 est premier, donc il est son propre plus grand facteur premier.

Références

Ce défi a été adapté pour CodeUtility. Suivez l'énoncé et les contraintes ci-dessus.

Apprenez des autres

Solutions de la communauté

Aucune solution publiée pour l'instant. Résolvez ce défi pour partager la première.