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.
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
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.
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)
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 deid_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 pashttps://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 passeenregistrer votre travail:
git add main.gp git commit -m 'ma solution'
le soumettre pour validation:
git push origin