Bonjour je voudrais savoir si 'il serai possible de nous afficher le temps d'exécution lorsque celui ci est dépassé car la je fais l 'exo 3 sur les sous séquences et au bout du 5ème algo utilisé je dépasse toujours...
Algo 2010
Au pire, tu peux faire ça dans ton code et te renvoyer le temps utilisé sur la sortie d'erreur. ;)
Mais ça ne te servirait pas beaucoup je pense.
Sinon, tu peut tester en local en affichant les temps d'exécution en utilisant les contraintes maximum donner dans l'exo.
Si tu utilises linux, tu peux utiliser la commande "time" pour connaitre le temps d'exécution de ton programme.
j'aimerais bien que quelqu'un explique comment utiliser la sortie d'erreur, parce que les tests en local c'est bien beau mais mon ordi est bcp plus lent que le serveur, donc le temps qu'il met n'est pas du tout représentatif du temps mis sur le serveur...
En C, tu peux utiliser fprintf avec stderr, en C++ cerr, en Caml prerr_endline...
Mais je ne vois pas à quoi ça peut bien te servir de connaître ton temps d'exécution...
oui mais concretement je le met ou le cerr ?? dans un bloc catch ?? du coup le bloc try contient quoi ??
tu ecris std::cerr
sinon c'est quoi un bloc catch?
ben moi ce que je connaissais au niveau de la gestion des erreures c'etait les bloc
try{ce qui risque de faire une erreure}
catch(type d'erreur à recup)
{ cerr
ce qui en fait empêche ton code de planter, si dans le bloc try tu mets par exemple une division par zéro, ça va pas te faire planter, ça va arrêter d'exécuter ton code tout simplement et passer au bloc catch puis à la suite du code.
ok merci je connaissais pas.
mais sinon fais gaffe avec les std::cerr car ca ralentit ton algo par ex pr l'exo 4 du QCM sans les std::cerr ca passe
alors qu'avec je ne passe pas le test 6
J'ai regardé la chaine donnée en entrée et je comprend pourquoi je dépasse en temps. C'est possible de faire ça en moins de 40 ms ?
oui, c'est possible
et parfois ça ce joue à quasiment rien au niveau du code