Goldbach : Décomposer en somme de premiers

Un nombre premier est un nombre entier qui a exactement 2 diviseurs : 1 et lui-même. Par exemple, 2, 3, 5, 7, 11, 13 sont les plus petits nombres premiers. Au contraire, 8 n'est pas un nombre premier car il est divisible par 1, 2, 4 et 8 (il a donc 4 diviseurs distincts et non 2).

Tout nombre pair peut s'écrire comme la somme de deux nombres premiers. Par exemple, 12 = 7+5 (7 et 5 sont premiers). 24 = 11+13 (11 et 13 sont premiers). Parfois il existe plusieurs sommes qui conviennent. Par exemple 24 vaut aussi 19 + 5 (et 19 et 5 sont premiers).

Défi :

Une séquence de nombres pairs est fournie en entrée. Pour chaque élément de cette séquence, vous devez donner un couple de nombres premiers dont la somme vaut cet élément.

Testez votre code :

Si l'entrée vaut (24, 6, 12, 16) une réponse possible est : (19,5), (3,3), (7,5), (3,13)

Attention, le nombre 1 n'est pas premier (car il n'a qu'un seul diviseur, et non 2).

Ce problème est tiré de c0d1ng UP 2014

Type de retour

Une séquence de couples de nombres

Entrée du problème

(2998, 3596, 1058, 6228, 8370, 3670, 1322, 436, 9660, 1786, 1866, 3336, 5578, 7454, 6122, 8828, 8656, 1032, 3858, 7072, 6352, 2064, 5248, 4098, 450, 1298, 9720, 1134, 402, 2260, 378, 9894, 9392, 5662, 1800, 740, 5400, 790, 7920, 4594, 2800, 8980, 3890, 2480, 8456, 9916, 9404, 8986, 5990, 1296)

Formulaire de réponse

Vous devez être connecté pour pouvoir répondre aux défis

Tags : arithmétique cup14