v2.11.0 (5728)

Enseignement scientifique & technique - CSC_0EL12_TP : Préparation aux concours de programmation/ Programming contest training

Domaine > Informatique.

Descriptif

Ce cours est recommandé aux élèves suivant la filière MITRO
Programmation : en anglais sauf demande de tous les élèves présents

Attention, à partir de 2024-2025, des groupes de niveau sont mis en place :

  •  le cours de mardi matin de P4 sera le groupe le plus avancé. Il s'adresse aux élèves qui ont déjà une expérience en programmation compétitive et/ou apprécient particulier l'algorithmique. Cette itération du cours passera plus rapidement sur les bases et présentera plus de détails sur les algorithmes avancés.
  • le cours du mardi après-midi de P4 sera le groupe des débutants. Il s'adresse aux élèves qui ont déjà suivi un cours de C/C++ et d'algorithmique, mais qui n'ont aucune expérience en programmation compétitive.
  • le cours de mardi matin de P3 s'adresse aux élèves intermédiaires, soit parce qu'ils ont un conflit avec les cours de P4, soit parce qu'ils ont une expérience limitée de la programmation compétitive.

 

Langage de programmation : C/C++

Attention : Pour valider l'UE, il faut impérativement être présent pour participer au concours de programmation interne qui aura lieu jeudi après-midi à la fin de P4.

Cette UE est un entraînement aux concours de programmation en général, et au concours ICPC en particulier, via la résolution de problèmes pratiques par la programmation. Un investissement personnel est demandé en dehors des séances de cours pour résoudre des exercices de concours de programmation. Les séances de cours serviront de debriefing et de mise au point sur des sujets d’'algorithmique, de programmation, ou de stratégie à adopter au concours. L’'UE s’'achève par un concours interne de programmation, ouvert à l'’ensemble des étudiants de l'’école, et qui sert de présélection pour le concours ICPC.
 
Le concours ICPC est un concours international de programmation, mettant en compétition des équipes d'universités et écoles du monde entier. Il se déroule en deux phases : finales régionales (Europe occidentale « SWERC », swerc.eu) en décembre, auxquelles peuvent assister deux ou trois équipes par école, finales mondiales en juillet, entre les vainqueurs des épreuves régionales. Le but est de résoudre en temps limité (en C, C++, Java, Python, ou Kotlin) le plus grand nombre de problèmes de programmation.
 
Chaque séance consiste en un cours magistral sur un sujet algorithmique, une séance d'exercices en temps limité préparés à la maison puis des annales mettant en œuvre les techniques vues pendant la séance.

Objectifs pédagogiques

- L'élève aura acquis une culture générale sur les algorithmes les plus courants dans les concours de programmation
- L'élève saura utiliser C++ et les structures de données de la STL pour résoudre des problèmes algorithmiques
- L'élève saura analyser un problème de programmation compétitive pour identifier les structures de données et algorithmes à employer
- L'élève saura écrire le pseudocode d'un algorithme puis l'implémenter rapidement et correctement en réponse à un problème, et le déboguer jusqu'à ce qu'il soit accepté
- L'élève sera préparé à concourir pour représenter Télécom à des concours de programmation

24 heures en présentiel (16 blocs ou créneaux)
réparties en:
  • Autre : 3
  • Travaux Pratiques : 12
  • Leçon : 12

38.5 heures de travail personnel estimé pour l’étudiant.

effectifs minimal / maximal:

/25

Diplôme(s) concerné(s)

Parcours de rattachement

Pour les étudiants du diplôme Programme de mobilité des établissements français partenaires

Le langage de l'UE est C/C++, et doit être maîtrisé par les élèves (fortement recommandé) ou appris au cours de l'UE (beaucoup de travail personnel à prévoir).   Cette UE n'a pas de prérequis formels, mais une bonne expérience de la programmation (par exemple telle qu'acquise au sein d’'une UE de programmation ou via des projets, personnels ou encadrés) est fortement recommandée pour la suivre.

Pour les étudiants du diplôme Echange international non diplomant

Le langage de l'UE est C/C++, et doit être maîtrisé par les élèves (fortement recommandé) ou appris au cours de l'UE (beaucoup de travail personnel à prévoir).   Cette UE n'a pas de prérequis formels, mais une bonne expérience de la programmation (par exemple telle qu'acquise au sein d’'une UE de programmation ou via des projets, personnels ou encadrés) est fortement recommandée pour la suivre.

Pour les étudiants du diplôme Diplôme d'ingénieur

Le langage de l'UE est C/C++, et doit être maîtrisé par les élèves (fortement recommandé) ou appris au cours de l'UE (beaucoup de travail personnel à prévoir).   Cette UE n'a pas de prérequis formels, mais une bonne expérience de la programmation (par exemple telle qu'acquise au sein d’'une UE de programmation ou via des projets, personnels ou encadrés) est fortement recommandée pour la suivre.

 

Format des notes

Numérique sur 20

Littérale/grade européen

Pour les étudiants du diplôme Programme de mobilité des établissements français partenaires

Vos modalités d'acquisition :

50% contrôle continu (exercices à rendre pendant les séances), 50% concours de programmation interne en fin d'UE (en temps limité). Les problèmes de programmation sont corrigés automatiquement, des points partiels sont donnés manuellement pour les solutions non acceptées par le juge en ligne.

La note obtenue rentre dans le calcul de votre GPA.

Pour les étudiants du diplôme Diplôme d'ingénieur

Vos modalités d'acquisition :

50% contrôle continu (exercices à rendre pendant les séances), 50% concours de programmation interne en fin d'UE (en temps limité). Les problèmes de programmation sont corrigés automatiquement, des points partiels sont donnés manuellement pour les solutions non acceptées par le juge en ligne.

L'UE est acquise si Note finale >= 10
  • Crédits ECTS acquis : 2.5 ECTS
  • Crédit d'UE partagées acquis : 2.5

La note obtenue rentre dans le calcul de votre GPA.

Pour les étudiants du diplôme Echange international non diplomant

Vos modalités d'acquisition :

50% contrôle continu (exercices à rendre pendant les séances), 50% concours de programmation interne en fin d'UE (en temps limité). Les problèmes de programmation sont corrigés automatiquement, des points partiels sont donnés manuellement pour les solutions non acceptées par le juge en ligne.

La note obtenue rentre dans le calcul de votre GPA.

Programme détaillé

- Présentation générale

- Structures de la bibliothèque standard C++

- Débogage

- Stratégie générale de résolutions et schémas d'algorithmes

- Algorithmes de graphes

- Astuces de bits

- Algorithmes sur chaînes de caractères

- Géométrie algorithmique

- Problèmes mathématiques

Veuillez patienter