Étonnamment, je ne pense pas que nous ayons une question de code-golf pour déterminer si un nombre est à mi-temps .
Un semi-premier est un nombre naturel qui est le produit de deux nombres premiers (pas nécessairement distincts).
Assez simple, mais un concept remarquablement important.
Étant donné un entier positif, déterminez s'il s'agit d'un semi-premier. Votre sortie peut être sous n'importe quelle forme tant qu'elle donne la même sortie pour toute valeur véridique ou falsey. Vous pouvez également supposer que votre entrée est suffisamment petite pour que les performances ou le débordement ne soient pas un problème.
Cas de test:
input -> output
1 -> false
2 -> false
3 -> false
4 -> true
6 -> true
8 -> false
30 -> false (5 * 3 * 2), note it must be EXACTLY 2 (non-distinct) primes
49 -> true (7 * 7) still technically 2 primes
95 -> true
25195908475657893494027183240048398571429282126204032027777137836043662020707595556264018525880784406918290641249515082189298559149176184502808489120072844992687392807287776735971418347270261896375014971824691165077613379859095700097330459748808428401797429100642458691817195118746121515172654632282216869987549182422433637259085141865462043576798423387184774447920739934236584823824281198163815010674810451660377306056201619676256133844143603833904414952634432190114657544454178424020924616515723350778707749817125772467962926386356373289912154831438167899885040445364023527381951378636564391212010397122822120720357
-> true, and go call someone, you just cracked RSA-2048
Il s'agit de code-golf , donc les règles standard s'appliquent!