logo Homepage
+  NewbieContest
|-+  Challenges» Aide Programmation» Prog - Visual vigenere
Username:
Password:
Pages: 1 2 [3]
  Retourner à l'épreuve    Imprimer  
Auteur Fil de discussion: Prog - Visual vigenere  (Lu 20534 fois)
Epoc

Profil challenge

Classement : 1890/54280

Néophyte
*
Hors ligne Hors ligne
Messages: 8

The only limit is your own imagination


Voir le profil WWW
« #30 le: 09 Septembre 2011 à 13:07:00 »

T'inquiète je le sais bien
Journalisée
keutru

Profil challenge

Classement : 511/54280

Néophyte
*
Hors ligne Hors ligne
Messages: 11


Voir le profil
« #31 le: 31 Juillet 2012 à 23:10:46 »



3 secondes, c'est quand même chaud mico, je suis à ~6.5 secondes, j'ai quasiment 1 seconde pour chacun des deux aller/retour(s??). C'est en Perl, pour un script de cette taille, je ne vois pas trop comment gagner 4 secondes! J'imagine qu'il me faudrait plutôt envisager un langage compilé pour le coup!


Code:
 time ./visual-vigenere.pl -v test.pbm
0:4:32  * start
0:4:32  * get_string
0:4:33  * get_shifts(width)
0:4:33  * get_shifts(height)
0:4:33  * get_pixels
0:4:34  * do_shifts(height)
0:4:35  * do_shifts(width)
0:4:36  * create_image
0:4:37  * reordered image written to 'test.pbm'
0:4:37  * decode_vigenere: key='IMAGINEE' string='XXXXXX XXXXXX XXXXX XXXXX'
    -> decrypted: YYYYY YYYYYY YYYYYY YYYYYY
    -> wanted: 1
0:4:37   => solution: YYYYY
0:4:38
<h3 align="center">D&eacute;sol&eacute;..</h3><br /><p>Tu es trop lent. Tu as moins de 3 secondes.</p>

real    0m6.650s
user    0m5.908s
sys     0m0.292s

Journalisée
1-vek

Profil challenge

Classement : 27/54280

Néophyte
*
Hors ligne Hors ligne
Messages: 22

602 & BBS


Voir le profil
« #32 le: 05 Août 2012 à 00:23:10 »

J'imagine qu'il me faudrait plutôt envisager un langage compilé pour le coup!

pas forcement le serPent est plus rapide que le dromadaire ou l'éléPHPant !

cette épreuve m'a fait réfléchir un maximum, comme pas mal de monde, la premiere etape me prenait 4 à 5 secondes en php, les autres 1 à 2 secondes. du coup j'ai scripté ma premiere étape en python !

D'ailleurs, keutru, tu aura le meme probleme avec l'epreuve "Puzzle me"


« Dernière édition: 05 Août 2012 à 10:08:30 par 1-vek » Journalisée

hacker vaillant, rien d'impossible
keutru

Profil challenge

Classement : 511/54280

Néophyte
*
Hors ligne Hors ligne
Messages: 11


Voir le profil
« #33 le: 05 Août 2012 à 21:02:08 »

Effectivement ce n'était pas la peine de foncer sur un language compilé. J'ai quand même fait l'essai avec une autre lib qu'Image::Magick et là pouf! du premier coup, c'est le même algo, tout pareil, mais c'est plus rapide:

Code:
time ./visual-vigenere-pasIM....pl -v test.png
21:54:49  * start
21:54:49  * get_string
21:54:50  * get_shifts(width)
21:54:50  * get_shifts(height)
21:54:50  * get_pixels
21:54:50  * do_shifts(height)
21:54:51  * do_shifts(width)
21:54:52  * create_image
21:54:53  * reordered image written to 'test.png'
21:54:53  * decode_vigenere: key='XXXXX' string='YYYYYYY YYYYYYYY YYYYYYYYY YYYYYYYY'
    -> decrypted: YYYYYYY YYYYYYYY YYYYYYYYY YYYYYYYY
    -> wanted: 3
21:54:53   => solution: YYYYYYYYY
21:54:53
<h3 align="center">Bravo ........

real    0m4.981s
user    0m4.252s
sys     0m0.184s

Ça te fait drôlement apprécier le message de victoire d'ailleurs...
« Dernière édition: 05 Août 2012 à 21:09:55 par keutru » Journalisée
Frenchix
Profil challenge

Classement : 752/54280

Néophyte
*
Hors ligne Hors ligne
Messages: 9


Voir le profil
« #34 le: 23 Novembre 2012 à 18:36:30 »

Bonjour à tous,

Je ne sais pas si tu vas repasser par la keutru mais au cas ou, tu as utilisé quoi comme OCR en perl car je m’aperçois qu'il n'y a pas grand chose donc me voila bloqué à ce niveau et j'ai la flemme de le recommencer dans un autre language.

Si d'ailleurs quelqu'un d'autre a un bon OCR en perl je suis preneur

Mici
Journalisée
keutru

Profil challenge

Classement : 511/54280

Néophyte
*
Hors ligne Hors ligne
Messages: 11


Voir le profil
« #35 le: 23 Novembre 2012 à 19:23:25 »

Code:
my $text =  `gocr optionskivontbien -i '$filename'`


quoi? je devrais avoir honte? rahhh..
« Dernière édition: 25 Novembre 2012 à 10:23:47 par keutru » Journalisée
Alopekos

Profil challenge

Classement : 503/54280

Néophyte
*
Hors ligne Hors ligne
Messages: 23


Voir le profil WWW
« #36 le: 26 Mai 2013 à 03:13:36 »

Bonsoir...

Comme beaucoup je suppose, j'ai galéré à cause de la logique à adopter parce que je trouve que ce n'est pas très clair dans l'énoncé (et encore plus dans l'indication du créateur lui même en page 1 de ce topic...)

Il faut bien penser qu'il s'agit d'une rotation de chaque sous-pixels R, G et B de chaque pixels. Mais cette rotation s'effectue sur les 2 axes, selon l'image verticale et l'image horizontale.

Or quand on fait une rotation, ce sont les deux axes qu'on prend en compte, d'où l'expression pas clair : il faut faire l'un après l'autre et pas en même temps. En fait si, il faut faire les rotations sur x et sur y en même temps pour chaque pixels mais l'un après l'autre : pour chaque pixels, on fait la rotation sur x, PUIS on fait la rotation sur y. Et seulement après on passe au pixel suivant. Ce qui équivaut à une rotation x, y pour un pixel donné.

Je parle de l'encodage bien sur.

Voila ça m'a bien embrouillé tout ça
Journalisée
Pages: 1 2 [3]
  Retourner à l'épreuve    Imprimer  
 
Aller à: