Apprendre les bases de Python pour réussir en N.S.I.
Open Source Your Knowledge, Become a Contributor
Technology knowledge has to be shared and made accessible for free. Join the movement.
Prix pour un jeu de disques
Difficulté : Moyen (35%)
Origine : Projet Euler n°121
Un sac contient au départ un disque rouge et un disque bleu. Un joueur choisit au hasard un disque et la couleur tirée est notée. Après chaque tour, le disque est remis dans le sac et un disque rouge est rajouté puis un nouveau disque est choisi au hasard. On répète ainsi un certain nombre de tours.
Le joueur paye 1 euro pour jouer et gagne s'il a obtenu strictement plus de disque bleus que de rouges à la fin du jeu.
Si le jeu est joué en 4 tours, la probabilité pour un joueur de gagner est exactement 11/120 et le récompense maximum que la banque doit donner pour une victoire est de 10 euros pour qu'elle reste gagnante. Notons que la récompense doit être un nombre entier d'euros et inclure l'euro payé pour jouer au jeu. Ainsi, dans l'exemple donné, le joeur gagne en réalité 9 euros.
Trouver la récompense maximum que la banque doit offrir pour un jeu de 15 tours.
On affichera le résultat avec print
.
Calculs de puissances efficaces
Difficulté : Moyen (40%)
Origine : Projet Euler n°122
La méthode la plus naïve pour calculer requière 14 multiplications :
Mais en utilisant la méthode binaire, on peut calculer en six multiplications :
Cependant, il est possible de calculer avec seulement 5 multiplications :
On peut définir m(k) comme le nimbre minimum de multiplications pour calculer
Pour 1 ≤ k ≤ 200, Trouver la somme des m(k).
On affichera le résultat avec print
.
Reste de carré de nombres premiers
Difficulté : Moyen (30%)
Origine : Projet Euler n°123
On pose
Par exemple, quand n = 3,
La plus petite valeur de n pour laquelle le reste dépasse pour la première fois
Trouver la plus petit valeur de n pour laquelle le reste dépasse pour la première fois
On affichera le résultat avec print
.
Radicaux ordonnés
Difficulté : Moyen (25%)
Origine : Projet Euler n°124
Le radical de n, rad(n) est le produit des facteurs premiers distincts de n. Par exemple,
Si on calcule rad(n) pour 1 ≤ n ≤ 10, et qu'on les ordonne selon rad(n) et selon n si les radicaux sont égaux, on obtient :
Si on pose E(k) le k-ième élément dans la colonne des n triés, on a par exemple E(4) = 8 et E(6) = 9.
Si rad(n) est trié pour 1 ≤ n ≤ 100000, trouver E(10000).
On affichera le résultat avec print
.