やっぱり動的言語では安全なソフトは作れない 4

このエントリーをはてなブックマークに追加
167デフォルトの名無しさん
>>127
Perl

sub variation {
my $list = shift;
return map(sub{ map{ [@{$_[0]}, $_] } @{$list} }->($_), @_);
}

sub pyths {
my ($n) = @_;
return [
grep{ $_->[0]**2+$_->[1]**2 == $_->[2]**2 }
variation([1..$n], variation([1..$n], variation([1..$n], [])))
];
}

巨大配列作ってるので、foreachで包んだほうが効率良さそう。つーか色々無理。