Mission to Mars | Les résultats de la Worldcup du 25/01/2014

STAY CONNECTED, FOLLOW CODINGAME NOW



Samedi 25 Janvier, alors que la lune commençait à monter dans le ciel, on avait tous les yeux rivés sur Mars où, à des centaines de millions de kilomètres d'ici, Opportunity continue d'arpenter les cratères à sa vitesse de pointe de 5 cm par seconde.

Votre mission pour ce contest n'était pas des moindres : faire atterrir le module contenant Opportunity et débarquer le rover sain et sauf sur le sol martien dans des configurations toujours plus complexes. L'approche du problème a pu être un peu déroutante, on vous l'accorde, par rapport aux exercices qu'on proposait d'habitude, avec un degré de difficulté plus pointu, mais au final, en fonction des retours qu'on a eus, il semble que ce challenge ait remporté vos suffrages haut la main.


Et si vous faites partie de ceux qui ont planché de nombreuses heures mais pour qui le score n'était pas à la hauteur des attentes, rassurez-vous, c'était dur pour tout le monde, et le plus important était d'avoir eu plaisir à participer :)
Pour vous remercier de votre persévérance, on en profite pour offrir à ceux qui le souhaitent des autocollants CodinGame ! Il suffit de nous les demander à : coders [à] codingame.com


LE PETIT INFOGRAPHIQUE DU JOUR




LES EXERCICES

janv. 25 17:53:36 <Ninsuo> Bouteille d'oxygène prête les gars, j'attends vos instructions maintenant.





1er exercice : Mars Lander Level 1

janv. 25 20:15:57 <Ninsuo> votre simulateur me fait tripper
janv. 25 20:16:28 <Peekmo> moi c'est de voir la tête de mes collègues de la NASA qui me fait rigoler.
janv. 25 20:16:34 <Peekmo> ils se disent: "on est foutus"

Pour ce challenge, on sortait de la question traditionnelle d'algo pour vous plonger dans un simulateur d'atterrissage façon NASA. Pour commencer en douceur, il fallait procéder à un atterrissage simple vertical. Prérequis : détecter le sol pour se poser sans encombres (et non pas comme un bourrin en se laissant tomber comme une masse). Quelques poussées vers le haut judicieusement amenées suffisaient à ne pas crasher Opportunity lamentablement.

janv. 25 19:26:03 <kwaio> est-ce que le poids du fuel entre en compte ?


2e exercice : Mars Lander Level 2

janv. 25 21:36:43 <kwaio>  Tu passes pas le pic ou tu rates la zone après ?
janv. 25 21:37:55 <trolololol> je passe pas le pic
janv. 25 21:38:26 <kwaio>  réduis l'angle maximal. Ta poussée sera plus verticale et ton altitude diminuera moins
janv. 25 21:38:38 <kwaio>  par contre ta vitesse horizontale diminuera moins vite
janv. 25 21:40:36 <Ninsuo> bon vais me tuer moi 8-) je reviens

Là, ça se corse : les difficultés étaient de trouver la zone d'atterrissage, ne pas trop descendre et y aller mollo avec la puissance des gaz pour maîtriser sa jauge de fuel (au risque de s'écraser à nouveau lamentablement comme une masse). Et malgré tout, c'était pas évident de gérer aussi la vitesse d'entrée, la rotation pour repartir du bon côté, et remonter... Mais au final, pas besoin de trouver un chemin en fonction du sol (même s'il fallait atterrir sur une zone plane).

3e exercice : Mars Lander Level 3

janv. 25 19:09:20 <PHPeter> et le truc avec la grotte
janv. 25 19:09:21 <PHPeter> hum
janv. 25 19:09:23 <PHPeter> SADIQUE !
janv. 25 19:09:53 <admin_yoann_> la NASA ne rigole pas :)

Comme chacun le sait, il y a des grottes sur Mars (si, si !) et cette éventualité devait être prise en compte par les brillants ingénieurs de la NASA (dont vous faites partie).
Problématique ultime : cette fois, il y avait des obstacles. Donc le bricolage ne pouvait pas marcher,  il fallait sortir les maths et un soupçon de physique pour détecter les murs et calculer la trajectoire du vaisseau à l'avance. La vraie partie algorithmique se résumait à appliquer les méthodes de path finding. Chose extrêmement ardue qui mérite d'autant plus qu'on félicite ceux qui y sont parvenus !

janv. 25 20:18:49 <kwaio> Bon la caverne, y'avait de l'idée
janv. 25 20:19:05 <kwaio> mais "out of fuel"
janv. 25 20:19:15 <kwaio> avec 3x plus de fuel je crois que (par chance) j'aurai pu


Pourquoi, au final, le "harcoding" ne pouvait pas marcher : 
Pour les problèmes 2 et 3, il n'était pas possible de traçer un chemin prédéfini pour Opportunity. En effet, qu'on se le répête, les validateurs sont au final toujours différents  et des cas d'utilisation donnés dans les énoncés. Attention : on ne cherche pas à vous piéger non plus : les validateurs sont systématiquement très proches des tests proposés (ici, la différence se jouait à quelques mètres vers le bas seulement)

>>> Vous pouvez refaire ces exercices via la page training.


LE PODIUM

Le premier à décrocher un 100% est pulse (01:34:30) en C#, suivi par kangz (01:43:23 en Python 3) et par where-is-s (02:40:24 en C++). Bravo à tous les 3 !


LE CLASSEMENT


Retrouvez le ranking et le leaderboard par langages avec le lien vers les code source des participants :
http://www.codingame.com/cg/#!ranking:21

Comme prévu, les participants du top 10 au classement global gagnent un t-shirt CodinGame, ainsi que et les 1ers au classement par langages qui ont un score (supérieur ou égal) à 50%.

Pour la première fois parmi le participants du Top 10, Python 3 et Haskell sont représentés !

Pour voir le code source des participants avec le replay de l’atterrissage d'Opportunity, cliquez sur les boutons { }

Pour visionner le replay de votre atterrissage par question, utilisez les boutons "play" à côté des validateurs:


1st in each Programming Language
TOP 10 
  1. pulse (100% 01:34:30 C#)
  2. kangz (100% 01:43:23 Python 3)
  3. where-is-s (100% 02:40:24 C++) 
  4. MrAaaah (100% 02:40:30 Python)
  5. Achess (100% 02:48:23 C#)
  6. SimonB (100% 03:06:56 Haskell)
  7. codename68 (100% 03:20:13 C++)
  8. I208iN (100% 03:25:45 C++)
  9. serhiyb (100% 03:25:56 Java)
  10. Ilya (100% 03:33:56 Python)
Java : serhiyb (100% 03:25:56 Java)
C++ : where-is-s (100% 02:40:24 C++)
Python : MrAaaah (100% 02:40:30)
Python 3 : kangz (100% 01:43:23 Python3)
C : Doraj (90% 04:12:39)
PHP : Pixel166 (100%  03:42:27)
C# : pulse (100% 01:34:30 C#)
Javascript : sadiquo (100% 04:41:36)
Ruby : floum (100% 04:45:40)
Scala : Ironc2 (100% 04:41:32) (Only 17 years old!)
Perl : Kwaio (80% 03:17:13)
Haskell : SimonB (100% 03:06:56 Haskell)
Objective C : zubin29 (75% 04:38:03)
Go : yann (90% 03:18:27)
Dart : grosplant (90% 04:00:33)


LA PLANETE CODINGAME

Parmi les 1524 inscrits, 963 valeureux sont allés jusqu'au bout de l'aventure Mars Lander.
Les inscrits sont issus de 56 pays différents. Dans le top 10 des pays les plus représentés : la France, l'Inde, le Maroc, la Russie, la Tunisie, l'Ukraine, le Brésil, les USA, la Roumanie, le Royaume-Uni.





LE(S) MOT(S) DE LA FIN

janv. 25 19:12:19 <aliasBoubou> Félicitations pour cette épreuve vraiment sympa ;)

janv. 26 00:18:54 <glandais> merci pour ce dur challenge, je suis impatient de voir le code des premiers

janv. 26 00:09:09 <Peekmo> merci pour ce codingame encore surprenant et réussi

janv. 25 23:12:43 <Hugues_>  Merci beaucoup pour cette épreuve.

janv. 25 23:13:02 <Hugues_> Pour me changer les idées, je vais aller faire un peu de prog tiens.

« Un grand bravo pour le challenge de samedi dernier qui était vraiment original, interactif, et au cours duquel je n'ai rencontré aucun problème technique même dans les simulations animées. » Valentin


Spéciale dédicace à Ironc2 qui est au lycée en Terminale et qui termine brillamment 18e au classment global et 1er en Scala. Chapeau l'artiste :)







Aucun commentaire

Enregistrer un commentaire