soluzioni e timing per riconoscimento pattern 1d

Marco Molteni molter a tin.it
Lun 18 Lug 2005 22:42:04 CEST


Come gentilmente richiestomi da qualcuno che ha fatto i compiti
da solo ;-), ecco i risultati. Se la vostra soluzione non c'e',
rispondete a questa email cosi' l'aggiungo. Sto anche facendo
una pagina web con le varie soluzioni...

marco
-------------- parte successiva --------------
I tempi sono ottenuti su un cardenzone EPIA VIA C3 Samuel 2
(599.90-MHz 686-class CPU) con FreeBSD gattaccio 6.0-CURRENT.

*** gerarra a tin.it
Linguaggio: assembly i386
Nota: lo puoi modificare per richiedere il numero di valori sulla
riga di comando invece di richiedere una ricompilazione ogni volta?
meglio ancora se lo fai leggere da stdin o da un file


*** gmarco a gufi.org
Linguaggio: Perl

$ for i in 10 100 1000 10000 100000; do /usr/bin/time ./gmarco a gufi.org/solve.pl < array.txt.$i; done
Solution: 150305
        0.02 real         0.01 user         0.00 sys
Solution: 866703
        0.03 real         0.02 user         0.00 sys
Solution: 3773846
        0.03 real         0.02 user         0.00 sys
Solution: 4166171
        0.12 real         0.11 user         0.00 sys
Solution: 23919182
        1.01 real         0.98 user         0.01 sys

*** molter a tin.it
Linguaggio: Python

$ for i in 10 100 1000 10000 100000; do /usr/bin/time ./molter\@tin.it/solve-3.py $i; done
Result:  (150305, 1, 7)
        0.13 real         0.10 user         0.02 sys
Result:  (866703, 26, 88)
        0.14 real         0.11 user         0.01 sys
Result:  (3773846, 296, 886)
        0.15 real         0.10 user         0.04 sys
Result:  (4166171, 3493, 5914)
        1.36 real         1.32 user         0.01 sys
Result:  (23919182, 13335, 58356)
       18.45 real        18.14 user         0.07 sys


*** paolocerto a cblu.net
Linguaggio: PHP
$ for i in 10 100 1000 10000 100000; do /usr/bin/time ./paolocerto\@cblu.net/solve.php array.txt.$i; done
somma massima: 150305
        0.04 real         0.01 user         0.02 sys
somma massima: 866703
        0.04 real         0.03 user         0.01 sys
somma massima: 3773846
        0.06 real         0.04 user         0.00 sys
somma massima: 4166171
        0.23 real         0.21 user         0.00 sys
somma massima: 23919182
        1.91 real         1.87 user         0.01 sys


*** pierpaolo.bruno-0574 a poste.it
Linguaggio: C

$ for i in 10 100 1000 10000 100000; do /usr/bin/time ./pierpaolo.bruno-0574\@poste.it/vettori_s array.txt.$i $i; done
risultato 150305
         0.01 real         0.00 user         0.00 sys
risultato 866703
         0.00 real         0.00 user         0.00 sys
risultato 3773846
         0.01 real         0.01 user         0.00 sys
risultato 4166171
         0.05 real         0.04 user         0.00 sys
risultato 23919182
         0.46 real         0.44 user         0.01 sys


*** s.mangialardi a softshark.org
Linguaggio: C++

$ for i in 10 100 1000 10000 100000; do /usr/bin/time ./s.mangialardi\@softshark.org/subvect array.bin.$i; done
150305
        0.02 real         0.01 user         0.00 sys
866703
        0.02 real         0.01 user         0.00 sys
3773846
        0.02 real         0.01 user         0.00 sys
4166171
        0.02 real         0.01 user         0.00 sys
23919182
        0.04 real         0.02 user         0.01 sys


Maggiori informazioni sulla lista devel