[SPOIL] Archives 2010 de la demi-finale, que comprendre ?

Une structure de données correspond à une manière d'organiser des informations. Par exemple une base de donnée, un tableau ou une classe sont des structures de données.

Ah okay ! Je vois, je vois. Merci bien. :)

Et pour la question "Écrivez une fonction qui calcule le nombre de pions d’une couleur donnée dans une proposition" ? Calcule le nombre de pions à partir de quoi ?

Désolé pour mes questions stupides, c'est la première fois que je m'intéresse à ce genre de choses.

A partir de la structure de la première question.
Le principe des épreuves écrite est simple : Tu dois proposer une structure, que ce soit un tableau, une liste, ce que tu veux, où les données seront stockés, que tu réutiliseras à chaque question lors du codage de tes fonctions.

Ah okay ! Je vois ! Merci beaucoup :)

Et on est obligés de mettre les #include et la fonction main, etc... pour chaque question ?

Non, tu peux même faire du pseudo code si tu veux.
On veut évaluer ta capacité à résoudre un problème donné de façon efficace sur cette épreuve et non pas ta capacité à coder avec une syntaxe correcte (l'épreuve machine de l'après-midi est là, en partie, pour ça).

Je t'invite à lire la page qui décrit tout ça : www.prologin.org/contest/demi

Je vais être assez classique mais:
Ca dépend de si :
- tu as une bonne gueule ou pas
- l'aléatoire
- 42
- ta taille de tee-shirt

Il parait que d'autres critères sont pris en comptes, mais ce sont surtout des rumeurs:
- ta capacité à prouver la complexité des algorithmes
- tes connaissances en informatiques
- ton "ouverture d'esprit" ( si t'es un geek qui passe son temps sur l'ordi à jouer à wow, ou si t'es un mec qui fait d'autres choses à coté )
- 42

Les questions que j'ai eu par exemple :
- Tu connais quoi comme tris?
- Tu peux me prouver que c'est du nlog(n)?
- C'est quoi la différence entre fonctionnel et impérative?
- Tu connais d'autres staaaiiiles de programmation?
- Tu fais quoi comme activités extrascolaires?

Je crois que c'est tout...

Mdr ! Merci beaucoup pour vos réponses. Ah, une dernière question (pour l'instant) : y a-t-il des corrections des épreuves machines de demi-finales ?

Merci encore. :)

Okay. C'est normal que le serveur bug par moment ?

Là je viens de poster un code pour l'exo "Divination" de la demi-finale 2010, et la première fois, aucun test n'est passé, puis la deuxième fois, il a passé 6 tests sur 9 et pour le 7ème y a une "fatal error" (alors que j'ai utilisé l'ébauche de code de prologin). C'est bizarre...

Je vais poster le code ici (vous me direz ce que vous en pensez si, par hasard, un d'entre vous a un peu de temps libre à vouloir aider le pauvre ignorant que je suis...). Si vous avez d'autres conseils sur l'optimisation du code, je suis preneur. Merci.

Edit Unicorn : Merci de ne pas donner de code permettant de résoudre les exercices du site d'entrainement.

Je ne l'ai pas regardé en détail, mais moi je le trouve cooool, le mien est beaucoup plus moche.
Sinon, je pense qu'il a tout ce qu'il y a de plus classique, je pense pas que les réponses données à cet exercice différent entre les candidats qui l'ont résolu.
Ah oui, sinon, c'est quand même moche de mettre des accolades quand yen a pas besoin, et aussi, l'indentation est horrible, mais bon, c'est pas vraiment ta faute, ca me fait pareil quand je copie colle du code.

En même temps alex3er, il faut voir son C++. :p
Et tu devrais faire attention aux divisions par 0… C'est un UB, donc ça peut potentiellement détruire l'univers.

Lol. "UB" ? Qu'est-ce que c'est ?

Très bonne remarque pour la division par 0. J'ai aussi trouvé une petite astuce pour mieux optimiser les choses : il suffit de vérifier avant si n est pair ou pas, pour ne faire que les calculs qui nous intéressent (ça permet de se passer de ce système de tableaux à deux cases). Je vais corriger ça et le soumettre à nouveau...

Mais à part ça, ça peut bugger où ?

UB = undefined behavior, ça veut dire que c'est un comportement non couvert par la norme et que le compilateur ou l'OS peut faire n'importe quoi (l'exemple souvent donné c'est « formater le disque dur »), bon la plus part du temps ça segfault. :p
Bon, je vais coder un truc rapidement en (vrai) C++. :p

Merci pour l'explication :)

J'ai passé les 9 tests avec succès à présent !

Edit Unicorn : Merci de ne pas donner de code permettant de résoudre les exercices du site d'entrainement.

Nan mais tu devrais quand même éviter de poster ton code ici, ca va énerver les orgas, et les autres candidats ont direct la solution.
Et puis d'abord epsilon, que je te bats sur ioi ( même si ça risque d'être éphémère) , alors la ramène pas :p.
En plus, je code mieux que toi dans certains langages que tu n'as jamais appris na.

Répondre au sujet

Vous devez vous enregistrer ou vous connecter pour poster des messages.