France IOI
Présentation de l'entraînement à l'algorithmique

Cette section a pour objectif de vous permettre d'apprendre l'algorithmique. Nous considérons que le meilleur moyen de progresser dans ce domaine consiste à chercher par soi-même les algorithmes et non de lire leur description directement. Le plus important n'est en effet pas de retenir un certain nombre de connaissances sur le sujet, mais d'apprendre à réfléchir face à de nouveaux problèmes.

A cet effet, nous mettons à votre disposition des épreuves d'entraînement, qui consistent en des séries d'exercices de difficulté croissante et groupés par thèmes. Elles sont conçues spécialement pour vous faire découvrir petit à petit les principaux algorithmes classiques.

     Prérequis

Pour pouvoir résoudre les problèmes de cette section, vous devez avoir une bonne connaissance d'un langage de programmation. Si ce n'est pas le cas, commencez par résoudre les exercices du cours de programmation, qui permettent également de pratiquer les rudiments de l'algorithmique.

     Evaluation automatique

Les programmes que vous soumettez sont évalués automatiquement par nos serveur. Si vous ne l'avez jamais utilisé, lisez donc la présentation de notre système d'évaluation automatique.

     Ordre des problèmes

Les problèmes ne sont pas donnés dans l'ordre de difficulté, mais dans l'ordre dans lequel il vous est conseillé d'essayer de les résoudre. Dans certains cas, un problème relativement difficile est donné avant des problèmes plus simples, dont la solution peut aider à résoudre le premier. Vous ne devez regarder ces problèmes qu'après avoir cherché sérieusement la solution du problème plus difficile, ce qui vous laisse la possibilité de le résoudre sans aide.

     Conseils automatiques

Chaque exercice est accompagné de conseils donnés sur demande, qui permettent d'éviter de rester bloqué. Votre but doit être d'utiliser un minimum de ces conseils pour profiter au maximum de l'intérêt d'avoir trouvé la solution vous-mêmes. Inutile cependant de passer des heures sur un problème sans demander de conseil. Les entraîneurs sont également joignables pour répondre à vos questions et vous aider.

     Corrections

Les corrections des exercices présentent en détail les algorithmes découverts et des manières simples de les implémenter. Elles peuvent être considérées comme des cours, que vous pouvez relire régulièrement pour consolider vos connaissances. Il est important de les lire, car même si vous avez su résoudre un problème, sa correction peut vous apporter des informations supplémentaires. Vous pouvez par exemple y trouver d'autres manières de résoudre le problème, des manières de le programmer plus simplement, plus efficacement, ou d'autres informations qui pourront être utiles pour résoudre les problèmes suivants.