Bienvenue sur le site de l'épreuve pratique d'algorithmique et programmation du concours commun des écoles normales supérieures

ENS Rennes
ENS Lyon
ENS Cachan
ENS Paris

Adresse originale du site : http://informatique.ens-lyon.fr/concours-info/
Pour toute question/remarque sur cette page, contactez Colin Riba.

Modalités de l'épreuve
Objectifs de l'épreuve
Déroulement de l'épreuve

Configuration matérielle et logicielle

Image disque d'entraînement

Renseignements
pratiques

Archives
Les écoles normales supérieures

 

(13/12/2023) Cette année encore (session 2024), l'épreuve aura lieu à Lyon.

Modalités de l'épreuve (à lire attentivement)

L'épreuve se déroulera à l'École normale supérieure de Lyon, site Monod, pendant des week-ends du 17/18 juin (pour la filière MP/Info) et du 1/2 juillet 2023 (pour la filière MPI).

Comme lors des éditions précédentes, l'épreuve se décomposera en 3 parties:

1) Installation devant l'ordinateur et familiarisation avec l'environnement (10 min)

Ces 10 minutes permettent au candidat de se familiariser avec la machine et l'environnement de programmation. Il peut alors poser librement toutes les questions qu'il souhaite, en particulier sur les langages et interfaces.

2) L'épreuve sur ordinateur (3 h 30 min)

Après les 10 minutes d'installation, les sujets sont distribués et l'épreuve démarre. Le texte du sujet est accompagné d'une fiche réponse où devront être consignés les résultats numériques demandés dans le sujet, dans les cases correspondantes.

Durant cette partie de l'épreuve, le candidat répond aux questions numériques en remplissant la fiche et prépare l'interrogation orale qui va suivre.

Des feuilles de brouillon sont tenues à la disposition des candidats. Nous recommandons à chaque candidat de recopier proprement sur ces feuilles les algorithmes qu'il aura mis en oeuvre pour pouvoir les présenter clairement et rapidement à la demande de l'examinateur lors de l'oral qui suivra.

3) Remise de la fiche réponse et présentation orale des résultats lors d'un entretien individuel au tableau (20 min)

À l'issue des 3h30, le candidat est accompagné à la salle d'interrogation avec ses notes de brouillon et sa fiche. Il remet à l'examinateur sa fiche réponse et l'oral commence.

La présentation orale du candidat se fait sous la conduite de l'examinateur qui pourra, par exemple, en fonction des résultats de la fiche, demander au candidat de décrire précisément les algorithmes mis en oeuvre sur telle ou telle question, d'en donner leur analyse de complexité (en temps ou espace) et éventuellement proposer au candidat de corriger tel algorithme s'il s'avère faux.

Cet oral permet au candidat de pouvoir présenter les algorithmes qu'il a mis en oeuvre. Il ne s'agit pas d'un oral d'algorithmique indépendant de l'implémentation sur machine. L'évaluation est basée avant tout sur la résolution effective des problèmes posés.

TRÈS IMPORTANT : étant donné la durée très courte de l'oral, chaque candidat doit impérativement préparer soigneusement cet oral pendant la partie sur machine en rédigeant proprement sur les feuilles (de brouillon à sa disposition) les algorithmes qu'il a conçus pendant la préparation sur machine, afin de n'avoir qu'à les recopier au tableau, si l'examinateur les lui demande. Les candidats peuvent (et doivent) emporter avec eux tout ce qu'ils ont écrit au brouillon pour passer l'oral.

Remarquez également que cet oral est trop court pour que le candidat puisse concevoir l'algorithme au vol, ou même prendre le risque de ne pas se souvenir correctement de ce qu'il a fait.

Objectifs de l'épreuve

L’objectif de cette épreuve est d’évaluer les capacités des candidats à mettre en œuvre la chaîne complète de résolution d’un problème informatique : analyse des spécifications abstraites, conception d’un algorithme et choix des structures de données, évaluation de sa complexité (coût en temps et en mémoire), programmation sur machine dans l’un des langages proposés, test des programmes sur des petites valeurs des paramètres, et exécution sur des valeurs précises des paramètres. À la fois algorithmique et pratique, cette épreuve est donc transversale et permet de tester la maîtrise du candidat sur la résolution concrète d’un problème informatique.

Déroulement de l'épreuve

À l'entrée dans la salle, les candidats sont invités à prendre place face à l'ordinateur où leur nom est indiqué (voir la description de la configuration logicielle plus bas).

L'épreuve dure 4h10 en tout. Les 10 premières minutes permettent au candidat de s'installer et de se familiariser avec le système. À l'issue de ces 10 minutes, l'épreuve commence par 3h30 de préparation sur machine pendant lesquelles le candidat répond aux questions sur la fiche réponse et prépare la présentation orale de ses résultats. À la fin des 3h30, le candidat est accompagné avec sa fiche et ses notes à la salle d'interrogation orale où il présente ses résultats sous la conduite d'un examinateur.

Organisation pratique. Les candidats entrent dans la salle d'épreuve 4 par 4 toutes les 30 minutes, ce qui garantit que, pour chaque session, le dernier entre dans la salle d'examen avant que le premier n'en sorte.

Principe des sujets. Les questions portant sur les applications numériques sont posées de façon à pouvoir estimer la qualité et l'efficacité de la programmation : pour répondre juste aux questions portant sur des petites valeurs des paramètres, un programme simple et peu efficace suffit (voire pas de programme du tout) ; en revanche, pour les plus grandes valeurs des paramètres, un programme efficace (en temps et/ou en mémoire) est nécessaire.

Chaque candidat travaille sur des données différentes, générées à partir d'un nombre qui lui est donné individuellement au début de l'épreuve.

Dispositif de sauvegarde. Une clé USB (fixe) sera disponible sur chaque machine pour permettre aux candidats de sauvegarder régulièrement leur travail, afin de limiter les conséquences d'un éventuel (bien que peu probable) "crash" matériel ou logiciel. Les candidats doivent sauvegarder leur travail sur cette clé à la fin de la phase de préparation sur machine. La clé est récupérée par les examinateurs en fin d'épreuve.

Réinitialisation des machines. Les disques durs des ordinateurs sont systématiquement restaurés dans leur état initial entre deux sessions. Ainsi tous les élèves travaillent sur une configuration identique quoi qu'ait pu faire le candidat précédent.

IMPORTANT. Il est strictement interdit d'importer des données (ou fichiers de configuration) sous quelque forme que ce soit (disquettes, CDRom, clés USB, clé bluetooth, airport,...) dans les ordinateurs du concours, sous peine d'exclusion immédiate du concours.

Configuration logicielle

Système  : Linux Debian avec l'environnement graphique XFCE.

Les langages proposés sont les suivants:

  • Python 3 (éditeur pyzo ou gedit),
  • Objective Caml (éditeur emacs avec tuareg-mode, gedit ou WinCaml)
  • C / C++ / Pascal / Java / Python 2 / Scilab.
Rappel: une pièce d'identité et la convocation sont indispensables pour passer les épreuves.

Image disque d'entraînement

L'image disque suivante vous permettra de vous mettre en condition pour l'épreuve. Il est vivement conseillé de l'utiliser afin d'éviter de perdre du temps sur des problèmes techniques lors de l'épreuve.

Image disque: tp-algo-2023.iso (l'identifiant et le mot de passe sont tous les deux "tpalgo") et sa documentation (pas complètement à jour): doc-image-iso.pdf

Archives

Concours 2023
Concours MP
Concours MPI

Concours 2022

Concours 2021

Concours 2020
Épreuves orales annulées suite à la pandémie de COVID-19.

Concours 2019

Concours 2018

Concours 2017

Concours 2016

Concours 2015

Concours 2014

Concours 2013

Concours 2012

Concours 2011

Concours 2010


Concours 2009


Concours 2008


Concours 2007


Concours 2006


Concours 2005
Code à trois adresses
(u0 = 3, 25177, 50351, 75540)
Graphes d'intervalles
(u0 = 10, 20, 30, 40)
Labyrinthes
(u0 = 10, 20, 30, 40)
fichiers d'entrée: .zip
Généalogie
(u0 = 2, 20053, 39998, 60107)
Jeux à plusieurs et coalitions
(u0 = 1, 53, 223, 460)


Concours 2004

Concours 2003

Concours 2002

épreuve Zéro

Les écoles normales supérieures

Les départements d'enseignement en informatique des écoles normales supérieures ont pour vocation première de former des chercheurs ou enseignants-chercheurs de haut niveau en informatique. Cette formation conduit naturellement aux métiers de la recherche, publique (université, CNRS, INRIA, etc.) ou privée (recherche, ou recherche et développement).

Département d'informatique de l'ENS Paris-Saclay (ex. ENS Cachan)

Département informatique et télécommunications de l'ENS Rennes

Département d'informatique de l'ENS Lyon

Département d'informatique de l'ENS (Paris)

Le site global du concours commun des écoles normales supérieures en informatique:
http://www.lsv.ens-cachan.fr/concours-ens/info-ens.html