• + 0 comments

    Perl:

    sub getMoneySpent {
        my ($keyboard, $drives, $b) = @_;
        
        my $most_expensive = 0;
        my $keyb = 0;
        my $device = 0;
        for (my $i = 0; $i < scalar(@$keyboard); $i++) {
            for (my $j = 0; $j < scalar(@$drives); $j++) {
                if ($keyboard->[$i] < $b || $drives->[$j] < $b) {
                    my $sum = $keyboard->[$i] + $drives->[$j];
                    if ($sum > $most_expensive && $sum <= $b) {
                        $most_expensive = $sum;
                        $keyb = $keyboard->[$i];
                        $device = $drives->[$j];
                    }                
                }            
            }
        }
        return (($keyb + $device) > 0) ? $keyb + $device : -1;
    }