Реализация PERL для определения, содержит ли отсортированный массив два целых числа, которые суммируются до числа
my @a = (11,3,2,9,12,15);
my @b = sort {$a <=> $b} @a;
my %hash;
my $sum = 14;
my $index = 0;
foreach my $ele (@b) {
my $sum_minus_ele = $sum - $ele;
print "Trace: $ele :: $index :: $sum_minus_ele\n";
if(exists($hash{$sum_minus_ele}) && $hash{$sum_minus_ele} != $index ) {
print "\tElement: ".$ele." :: Sum-ele: ".$sum_minus_ele."\n";
}
$hash{$ele} = $index;
$index++;
}