Challenges

Liste

Les liens vers les challenges sont communiqués par mail.

Prérequis

  • Les challenges se résolvent sur un système de type unix, avec les trois outils git, gp, make. Par exemple sur ubuntu ` apt-get install git make pari-gp `

  • Il faut disposer d’un compte github

Accéder à un système unix depuis Windows

Par ordre de simplicité / confort.

  1. Windows propose désormais d’installer une machine virtuelle linux https://docs.microsoft.com/en-us/windows/wsl/ après installation lancer par exemple ubuntu

  2. Le serveur cocalc.math.univ-paris-diderot.fr de l’Ufr permet d’ouvrir dans son navigateur un terminal unix. Tous les outils y sont déjà installés.

  3. On peut sinon prendre l’habitude de travailler sur une machine distante, par exemple la machine de calcul MIC, via une connexion ssh. Voir https://www.howtogeek.com/336775/how-to-enable-and-use-windows-10s-built-in-ssh-commands/ pour mettre en place le client ssh (celui de Windows ou Putty)

  4. Installer une machine virtuelle avec VirtualBox.

Howto

Configurer git et github

(à faire la première fois)

  • installer git sur sa machine (apt-get install git ou équivalent)

  • créer un compte github (si besoin)

  • y mettre une clef ssh pour communiquer facilement de son ordinateur

    • créer la clef si on n’en a pas en tapant dans un terminal:

      ssh-keygen # puis taper 3 fois entree
      
    • copier le fichier suivant dans le presse-papier:

      cat ~/.ssh/id_rsa.pub
      
    • dans l’interface github - settings - ssh and gpg keys, ajouter une clef et y coller le contenu de id_rsa.pub

  • désormais vous pouvez dialoguer avec github depuis votre machine

Récupérer un challenge

  • cliquer sur le lien envoyé par mail, cela crée un nouveau dépôt sur github.

  • copier l’adresse du dépôt sur github (bouton vert). Bien prendre l’adresse git@github... (et pas https://github)

  • se mettre dans le repertoire mic et faire:

    git clone <adresse>
    

Résoudre

  • éditer le fichier main.gp jusqu’à ce qu’il calcule la solution.

  • vérifier à la main que gp -fq < main.gp affiche uniquement la solution cherchée

Valider

Remarque: ces étapes sont rappelées dans les énoncés.

  • taper make check pour vérifier que la solution passe

  • enregistrer votre travail:

    git add main.gp
    git commit -m 'ma solution'
    
  • le soumettre pour validation:

    git push origin