Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
14
Task/Multifactorial/Perl/multifactorial-1.pl
Normal file
14
Task/Multifactorial/Perl/multifactorial-1.pl
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ # <-- scoping the cache and bigint clause
|
||||
my @cache;
|
||||
use bigint;
|
||||
sub mfact {
|
||||
my ($s, $n) = @_;
|
||||
return 1 if $n <= 0;
|
||||
$cache[$s][$n] //= $n * mfact($s, $n - $s);
|
||||
}
|
||||
}
|
||||
|
||||
for my $s (1 .. 10) {
|
||||
print "step=$s: ";
|
||||
print join(" ", map(mfact($s, $_), 1 .. 10)), "\n";
|
||||
}
|
||||
10
Task/Multifactorial/Perl/multifactorial-2.pl
Normal file
10
Task/Multifactorial/Perl/multifactorial-2.pl
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
use ntheory qw/vecprod/;
|
||||
|
||||
sub mfac {
|
||||
my($n,$d) = @_;
|
||||
vecprod(map { $n - $_*$d } 0 .. int(($n-1)/$d));
|
||||
}
|
||||
|
||||
for my $degree (1..5) {
|
||||
say "$degree: ",join(" ",map{mfac($_,$degree)} 1..10);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue