Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » Concours - Contests » Concours FireProg » Premier Concours FireProg (67 réponse(s))
./REPRISE DU POST PRECEDENT (post n°38)   Marquer comme non lu.
LionelA Ecrit le: Lundi 6 septembre 2004 à 22:32 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


C'est sûr qu'il est moins rapide mais il est le plus petit !
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°39   Marquer comme non lu.
geogeo Ecrit le: Lundi 6 septembre 2004 à 22:35 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Mouai en TI-Basic, je préfère choisir quand même une optimisation vitesse. :D
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
./Post n°40   Marquer comme non lu.
LionelA Ecrit le: Lundi 6 septembre 2004 à 22:42 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Le plus rapide c'est celui de bobti89, on pourra pas faire mieux.
Il fallait que j'essaye de faire le plus petit :p
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°41   Marquer comme non lu.
Folco Ecrit le: Lundi 6 septembre 2004 à 23:04 Déconnecté(e)    Voir le profil de Folco Envoyer un email à Folco Envoyer un message privé à Folco  


faux, le sien n'est pas codé
-Edité le Lundi 6 septembre 2004 à 23:04 par Martial Demolins-
<<< Kernel Extremist©®™ >>>
Pas la peine d'aller là plus d'une fois tous les six mois...

"Il faut apprendre pour savoir qu'il faut apprendre pour savoir."
    
./Post n°42   Marquer comme non lu.
Pollux Ecrit le: Mardi 7 septembre 2004 à 15:25 Déconnecté(e)    Voir le profil de Pollux Envoyer un email à Pollux Envoyer un message privé à Pollux  

Euh, c'est plus du hashage que du cryptage (il faut utiliser un MD5 ou un SHA-1 pour être inviolable -- par contre tout ce qui a été dit plus haut est évidemment très mauvais point de vue sécurité)

Le plus simple, probablement :

when(s="",-1298870332077187753728,f(mid(s,2))/256+ord(s))->f(s)

49 octets, environ 0.35 seconde sur HW1.

(en fait on doit pouvoir gagner un octet en le faisant en base 255 et pas 256)
    
./Post n°43   Marquer comme non lu.
LionelA Ecrit le: Mardi 7 septembre 2004 à 17:00 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


C'est vraiment optimisé là !! Pourrais tu m'expliquer comment ça fonctionne?
Sinon comment tu arrives à chronometrer le temps ?
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°44   Marquer comme non lu.
Pollux Ecrit le: Mardi 7 septembre 2004 à 19:20 Déconnecté(e)    Voir le profil de Pollux Envoyer un email à Pollux Envoyer un message privé à Pollux  

en gros c un gros entier qui contient tout bêtement la représentation ASCII de la chaîne, et après on le "mange" petit-à-petit en décomposant la chaîne, si on trouve 0 à la fin c que la chaîne était la bonne, sinon c qu'elle était différente.

Et on peut encore légèrement optimiser :
when(s="",4936706897804105008,(f(mid(s,2))-ord(s))/255)->f(s)
devrait prendre 47 octets.


Pour le chronométrage, juste avec une montre et
f("FireProg"):f("FireProg"):...
(j'en avais mis 32 là)
    
./Post n°45   Marquer comme non lu.
bobti89 Ecrit le: Mardi 7 septembre 2004 à 20:43 Déconnecté(e)    Voir le profil de bobti89 Envoyer un email à bobti89 Visiter le site WEB de bobti89 Envoyer un message privé à bobti89  

Avec :
string(ord(seq(mid(x,i,1),i,1,dim(x)))-70)="{0,35,44,31,10,44,41,33}"->pass(x)

j'obtiens 0.14 s (en le lancant 100 fois) pour 62 octets.

Sinon, pour lionelA et Pollux : J'avais pensé au récursif dès le début mais ma fonction dépassait les 100 octets et était lente... Pollux : #top#

edit : pas posté la bonne fonction :p , gain minime...
-Edité le Mercredi 8 septembre 2004 à 21:09 par bobti89-
bob ou bob, vous ne voyez pas la différence. Pourtant il y en a une fondamentale, l'un est écrit à l'endroit, l'autre à l'envers.

Visitez mon site : http://www.bobti89.fr.st
Testez mon forum ici
    
./Post n°46   Marquer comme non lu.
geogeo Ecrit le: Mardi 7 septembre 2004 à 20:44 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Pollux>Tu pourrais développer le programme avec les conditions If ... Then sans récursivité avec f, bref parcours avec des gotos ou autre mais sans appel à la fonction f. Histoire de pouvoir tester avec mon interpréteur et de comprendre la fonction when.

En tout cas cette méthode est puissante mais reste limitée surtout (utile avec seulement des petites chaînes de caractères). Et malgré tout est assez facile à casser.
-Edité le Mardi 7 septembre 2004 à 20:50 par geogeo-
-Edité le Mardi 7 septembre 2004 à 20:50 par geogeo-
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
./Post n°47   Marquer comme non lu.
LionelA Ecrit le: Dimanche 12 septembre 2004 à 19:27 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


J'ai essayé de refaire l'algo en iteratif mais j'ai pas réussi :( (je suis vraiment plus nul que je ne le pensais)

Sinon comme le concours est fini, on pourrait avoir le classement ? (tout le monde sait qu'il y a pollux et bobti89 sur le podium en tout cas :D)

A quand le prochain concours ?? (Un peu plus compliqué stp)
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°48   Marquer comme non lu.
geogeo Ecrit le: Dimanche 12 septembre 2004 à 19:31 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Moi je veux le code en itératif. #ouin#
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
./Post n°49   Marquer comme non lu.
LionelA Ecrit le: Dimanche 12 septembre 2004 à 19:45 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Bon je vais re-tenter un coup de developper l'algo pour toi :)
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°50   Marquer comme non lu.
bobti89 Ecrit le: Dimanche 12 septembre 2004 à 19:54 Déconnecté(e)    Voir le profil de bobti89 Envoyer un email à bobti89 Visiter le site WEB de bobti89 Envoyer un message privé à bobti89  

Le résultat, le résultat :)
bob ou bob, vous ne voyez pas la différence. Pourtant il y en a une fondamentale, l'un est écrit à l'endroit, l'autre à l'envers.

Visitez mon site : http://www.bobti89.fr.st
Testez mon forum ici
    
./Post n°51   Marquer comme non lu.
Dari Ecrit le: Dimanche 12 septembre 2004 à 19:56 Déconnecté(e)    Voir le profil de Dari Envoyer un email à Dari Visiter le site WEB de Dari Envoyer un message privé à Dari  

Alors :

Taille la plus importante : 163 octets (Genocyd)
Temps le plus important : 0,2999 s (LionelA)
Les notes sont en gras.

LionelA :
when(ord(s)+1=ord(right("GjsfQsph",dim(s))),1+f(right(s,dim(s)-1)),0)->f(s)

Résultats : 0,2999 s, 85 octets
Note : 1 + 0,52 = 1,52

Genocyd :
password(arg)
Func
Local a,arg,fin
""->fin
For a,1,dim(arg)
fin&char(ord(mid(arg,a,1))+1)->fin
EndFor
If fin="GjsfQsph" Then
return 1
Else
return 0
EndIf
EndFunc

Résultats : 0,2383s, 163 octets
Note : 0,79 + 1 = 1,79

Martial Demolins :
fireprog(p)
func
local q,x
""->q
for x, 1, min(dim(p),8)
q&char(ord(mid(p,x,1))-1)->q
endfor
q="EhqdOqnf"
EndFunc

Résultats : 0,2510s, 113 octets
Note : 0,84 + 0,69 = 1,53

Pollux :
when(s="",4936706897804105008,(f(mid(s,2))-ord(s))/255)->f(s)

Résultats : 0,1929s, 71 octets
Note : 0,64 + 0,44 = 1,08

Bobti89 :
string(ord(seq(mid(x,i,1),i,1,dim(x)))-70)="{0,35,44,31,10,44,41,33}"->pass(x)

Résultats : 0,1119s, 85 octets
Note : 0,37 + 0,52 = 0,89

Limmt :
pass(p)
Func
Local x,q
""->q ©Limmt, tu avais oublié une ligne !!!!!
For x,1,dim(p)
q&char(ord(mid(p,x,1))-1)->q
EndFor
If q="EhqdOqnf"
Return 1
Return 0
EndFunc

Résultats, même s'il est disqualifié pour la ligne qui manquait : 0,2352s, 127 octets

Je locke le topic, je publierais les résultats quand j'aurai testé (j'ai accès à l'ordi que le week-end).
Au fait : Je pourrais donner un entier en argument, mais comme c'est la premier programme, je le ferais pas (sinon tout le monde aurait 2,01?). Pensez-y le prochain coup.

Classement :
Premier : Bobti89 (0,89) ? Respect (et de loin en plus)
Deuxième : Pollux (1,08) ? Presque !
Troisième : LionelA (1,52) ? C'est quand même pas mal
Quatrième : Martial Demollins (1,53) ? Pas de beaucoup à côté du podium
Cinquième : Genocyd (1,79) ? Il a oublié ce qu'était "optimiser"

Bravo à tous et rendez-vous dans pas longtemps si vous en voulez encore (exprimez-vous dans le topic principal) !
-Edité le Jeudi 28 octobre 2004 à 13:25 par Dari-
-Edité le Jeudi 28 octobre 2004 à 13:26 par Dari-
"iPod, therefore, I am."

http://media.laquadrature.net/Quadrature_black-out_HADOPI_468x60px.gif

    
./Post n°52   Marquer comme non lu.
limmt Ecrit le: Samedi 18 septembre 2004 à 18:13 Déconnecté(e)    Voir le profil de limmt Envoyer un email à limmt Visiter le site WEB de limmt Envoyer un message privé à limmt  


et moi?
http://www.falco-fr.com/ - http://www.jump67.com/ - http://www.msf-league.com/
    
./Post n°53   Marquer comme non lu.
Folco Ecrit le: Lundi 27 septembre 2004 à 23:57 Déconnecté(e)    Voir le profil de Folco Envoyer un email à Folco Envoyer un message privé à Folco  


c classé ça?
-Edité le Lundi 27 septembre 2004 à 23:58 par Martial Demolins-
<<< Kernel Extremist©®™ >>>
Pas la peine d'aller là plus d'une fois tous les six mois...

"Il faut apprendre pour savoir qu'il faut apprendre pour savoir."
    
./Post n°54   Marquer comme non lu.
bobti89 Ecrit le: Mardi 28 septembre 2004 à 20:37 Déconnecté(e)    Voir le profil de bobti89 Envoyer un email à bobti89 Visiter le site WEB de bobti89 Envoyer un message privé à bobti89  

Euh, je crois pas, mais on attend tous le résultat :)
bob ou bob, vous ne voyez pas la différence. Pourtant il y en a une fondamentale, l'un est écrit à l'endroit, l'autre à l'envers.

Visitez mon site : http://www.bobti89.fr.st
Testez mon forum ici
    
./Post n°55   Marquer comme non lu.
LionelA Ecrit le: Mardi 28 septembre 2004 à 21:17 Déconnecté(e)    Voir le profil de LionelA Envoyer un email à LionelA Visiter le site WEB de LionelA Envoyer un message privé à LionelA  


Oui ! Le resultat !! le resultat !!

C'est surement pas classé (ca m'etonnerais d'être largement devant pollux et bobti89 qui devraient être devant moi normalement)
Auteur de Mode7 Engine pour ti68k
Auteur de F-ZERO for TI68k
Membre de Orage Studio
Mon site perso : http://www.tigen.org/lionela/
Le gite de mes parents à coté de Narbonne :
http://chaletdenis.free.fr/
    
./Post n°56   Marquer comme non lu.
Dari Ecrit le: Mercredi 29 septembre 2004 à 15:54 Déconnecté(e)    Voir le profil de Dari Envoyer un email à Dari Visiter le site WEB de Dari Envoyer un message privé à Dari  

Nan c'est pas classé, normalement c'étati même locké et j'ai pas le temps de tester (je vous le promet au max pour les vacances)
"iPod, therefore, I am."

http://media.laquadrature.net/Quadrature_black-out_HADOPI_468x60px.gif

    
./Post n°57   Marquer comme non lu.
kaz00 Ecrit le: Jeudi 28 octobre 2004 à 13:40 Déconnecté(e)    Voir le profil de kaz00 Envoyer un email à kaz00 Envoyer un message privé à kaz00  

lol, euh c'est quoi optimiser?
    
  :: Index » Concours - Contests » Concours FireProg » Premier Concours FireProg (67 réponse(s))
Pages : 3/4     « 1 2 [3] 4 » »|

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 50.2ms avec 18 requetes