Stages de Pré-Rentrée — Inscriptions ouvertes, places très limitées ! S'inscrire

Annale · 2016Session du 29 avril 2016

Informatique Mines-Ponts PC 2016 — sujet, corrigé et rapport jury

Modélisation de la propagation d'une épidémie. Sujet d'informatique commune (MP/PC/PSI) sur le traitement informatique de la modélisation d'une propagation d'épidémie. Notions variées : tris (insertion, fusion), invariants de boucle,……

Mohamed K.

Mohamed K.

Centralien · MPSI puis MP · Recherche ML santé

Session 2016 :

InfoChimieMaths IMaths II
Aperçu rapide

Top piège du sujet : Q3 — complexité O(n!) ou O(1) sans réflexion

Analyse

Ce qu'a observé le jury

Synthèse Hadamard du rapport officiel — citations, chiffres et conseils du jury.

Présentation du sujet

Sujet d'informatique commune (MP/PC/PSI) sur le traitement informatique de la modélisation d'une propagation d'épidémie. Notions variées : tris (insertion, fusion), invariants de boucle, requêtes SQL, algorithmique sur tableaux, résolution numérique d'un système différentiel (méthode d'Euler).

Structure de l'épreuve

  1. Partie IQ1-Q4 — Tris et invariants de boucle(Q1-Q4)Niveau attendu

    Q2 invariant de boucle maltraitée — raisonnement par récurrence, initialisation. Q3 complexités exotiques (O(1) à O(n!^n)), tri fusion à complexité « linéaire » (faux). Q4 tri sur le 2e élément seulement.

  2. Partie IIQ5-Q8 — SQL et bases de données(Q5-Q8)Difficile

    Q5 clef primaire mal maîtrisée. Q6 FROM palu IMPORT (faux), pseudo-anglais. Q7 jointure symétrique avec condition à 2 attributs/table. Q8 LIMIT/OFFSET ou sous-requêtes.

  3. Partie IIIQ9-Q15 — Système différentiel et Euler(Q9-Q15)Difficile

    Q10 f(X) = S+I+R+D (faux, système différentiel pas linéaire). Q11 renvoyer tableau numpy (pas liste). Q12 rôle du pas dans la méthode d'Euler. Q13-Q14 difficiles, repèrent les meilleures copies.

  4. Partie IVQ16-Q20 — Algorithmique sur grille(Q16-Q20)Difficile

    Q16 G[i][j] (Python) vs G[i,j] (numpy). Q17 if/elif lourd au lieu d'une structure légère. Q18 type booléen vs valeurs True/False. Q20 nouvelle grille dès le début (ne pas modifier G avant la fin).

Analyse globale du jury

« L'épreuve nous a paru de nature à garantir un classement efficace des candidats. Quelques excellentes copies témoignent d'un travail approfondi sur le programme, doublé d'une grande rapidité et d'une capacité à écrire des programmes clairs, concis, et syntaxiquement irréprochables. À l'inverse, quelques copies témoignent d'une méconnaissance flagrante des règles de bases de cette discipline. La maîtrise de la syntaxe de base des langages Python et SQL est absolument indispensable. »

Top pièges sanctionnés

  • Q3 — complexité O(n!) ou O(1) sans réflexion-2 pts

    « Cette question a donné lieu à un florilège de résultats particulièrement exotiques. Le cours sur les tris semble être passé de manière approximative chez beaucoup de candidats. Les complexités s'échelonnent de O(1) à O(n!^n), avec beaucoup de complexités en O(n!) : il est dommage qu'un très grand nombre de candidats montrent par là qu'ils n'ont pas saisi la portée pratique de la notion de complexité. »

  • Q3 — tri-fusion linéaire dans le meilleur cas-2 pts

    « Parmi les candidats qui citent à raison le tri fusion, beaucoup prétendent qu'il possède une complexité linéaire dans le meilleur des cas et quasi-linéaire dans le pire des cas. »

  • Q5 — clef primaire mal comprise-2 pts

    « La notion de clef primaire est très mal maîtrisée. On a ainsi pu lire des phrases très étonnantes, comme « l'attribut iso peut servir de clef primaire, et de même le couple iso/année peut servir de clef primaire car elle renvoie à une seule ligne du tableau ». »

  • Q6 — pseudo-anglais en SQL (FROM palu IMPORT)-2 pts

    « Une requête commençant par FROM palu IMPORT... laisse dubitatif sur la qualité du travail de préparation des candidats sur le langage SQL. (...) il est aussi rappelé à certains candidats créatifs que l'épreuve d'informatique n'est pas une épreuve d'anglais, et que bricoler une instruction vague avec des pseudo-mots d'anglais n'est pas suffisant pour écrire une requête en SQL. »

  • Q10 — f(X) = S+I+R+D pour un système non linéaire-2 pts

    « Nous avons constaté sur cette question un grand nombre de réponses comme f(X)=S(t) + I(t) + R(t) + D(t), qui témoignent d'une incompréhension du fonctionnement des systèmes différentiels. »

  • Q12 — N=7 simulation discrète vs N=250 continue-2 pts

    « On a pu lire des horreurs comme « la simulation est discrète pour N=7 alors que pour N=250 elle est continue ». »

  • Q20 — modifier G avant la fin de la fonction-2 pts

    « Une erreur fréquente des candidats est de n'avoir pas perçu la nécessité de créer une nouvelle grille dès le début de la fonction, et de ne pas modifier G avant la fin de celle-ci : en effet, les valeurs de G sont nécessaires à la détermination de l'évolution, et on ne peut pas à la fois effectuer des tests utilisant les valeurs de G et modifier G. »

Chapitres clés à maîtriser

Tris (insertion, fusion) et complexités
Invariants de boucle
SQL — clef primaire, jointures, LIMIT
Méthode d'Euler et systèmes différentiels
Manipulation de listes et tableaux numpy

Source : Rapport du jury Mines-Ponts · Info PC, session 2016 · PDF officiel ↗

Ressources

Téléchargements

Sujet officiel, corrigé Hadamard et rapport jury — tout en un endroit.

FAQ

Questions fréquentes — 2016

Partager

Préparation Mines-Ponts · Info PC

Bossez ce sujet 2016 avec un ancien taupin

Nos professeurs analysent votre copie sur ce sujet, identifient vos faiblesses et structurent votre révision pour la session 2017.

Sujet