Corrigé Mines-Ponts 2026 Informatique option MP — Partie 1 (Q1 à Q4) : Puissance rapide et écriture binaire des lettres
Sujet officiel du concours Mines-Ponts, session 2026, épreuve Informatique option MP. Corrigé rédigé par Ibrahim Alame.
Sujet officiel (PDF, site du concours)
Énoncé
Pour , est l'alphabet des vecteurs colonnes de taille à coefficients dans ; par exemple . Pour un mot sur , (bit de poids faible à gauche). Pour un mot sur , est le mot formé par la ligne de ses lettres et . En OCaml, une lettre de est un int array de taille à valeurs dans ; on suppose les entiers non bornés.
Q1. Écrire une fonction récursive pow2 : int -> int calculant en , sans lsl ni lsr.
Q2. Démontrer que sa complexité est en .
Q3. Exhiber une bijection entre et .
Q4. Écrire decompose : int -> int -> int array qui, pour , renvoie la lettre de associée à par cette bijection, en vérifiant l'entrée par une assertion.
Corrigé
Q1. C'est l'exponentiation rapide : si est pair et si est impair.
let rec pow2 n =
if n = 0 then 1
else
let p = pow2 (n / 2) in
if n mod 2 = 0 then p * p else 2 * p * p
Correction, par récurrence forte sur : pow2 0 vaut ; pour , donc p vaut par hypothèse de récurrence, et donne ou . Terminaison : l'argument, entier naturel, décroît strictement à chaque appel. Exécutée : pow2 10 = 1024, et pow2 n = 1 lsl n pour tout .
Ce que le correcteur attend : un seul appel récursif, dont le résultat est nommé (p). Écrire pow2 (n/2) * pow2 (n/2) fait deux appels par étage : , soit une complexité linéaire, ce que le jury a relevé dans de nombreuses copies.
Q2. On compte les opérations arithmétiques en temps constant (hypothèse de l'énoncé : les entiers sont non bornés, on ne compte pas leur taille). Chaque appel fait, hors appel récursif, un nombre borné d'opérations (un test, une division, un reste, au plus deux multiplications) : coût . Il suffit donc de compter les appels.
100 % gratuit
La suite du corrigé est sur Adloun
Le corrigé rédigé en entier, question par question, et le tuteur pour poser des questions sur ce sujet.
Voir le corrigé complet, gratuitementInscription gratuite en 30 secondes (e-mail, nom d'utilisateur, mot de passe, classe ou profil), sans carte bancaire : arrivée directe sur le corrigé.