@set = (1..3); $max_reps = 2; $len = 10; my @acu = ([], []); my @gen = (\&gen_salva, \&gen_salva2); my ($total, $ds) = (0,0); my $n = 10000000; for (1..$n) { for (0, 1) { my $out = $gen[$_]->(); while ($out =~ /(.)\1/g) { $acu[$_]->[pos($out) - 2]++; } } } use Data::Dumper; print Dumper \@acu;