Si vous ne connaissez pas, le [Projet Euler] consiste en une série de problèmes mathématiques à résoudre par programmation. Vous résolvez le problème, vous entrez la solution, et si c'est bon, vous avez accès à un forum où vous pouvez lire les solutions et/ou commentaires trouvées par d'autres personnes, grâce à d'autres (ou pas) langages de programmation. A mon sens, c'est donc intéressant pour 2 points de vue:

  • Se creuser la tête sur des problématiques "simples" (j'en suis au début pour l'instant), mais pouvant déboucher sur des solutions poussées
  • Comparer sa solution avec ce que les autres ont trouvé, ce qui ne peut-être que bénéfique

Pour ma part, je vais essayer à chaque fois de trouver la solution à chaque problème de 2 manières:

  • Une approche brute de fonderie en utilisant les "bases" du C#
  • une approche fondée sur l'utilisation de LINQ

Ca permettra ainsi de comparer (là encore) les solutions et de constater que même si LINQ est un très bel outil de requête sur des données, il a malheureusement un coût important qui se manifeste par une plus longue exécution pour trouver le même résultat.

Mais sans plus attendre, voici mes solutions pour le premier problème...