32 lines
566 B
Perl
32 lines
566 B
Perl
#!/usr/bin/perl
|
|
|
|
use strict;
|
|
use warnings;
|
|
|
|
my @list1;
|
|
my @list2;
|
|
|
|
while (<>) {
|
|
my @nums = split;
|
|
next unless @nums;
|
|
push @list1, $nums[0];
|
|
push @list2, $nums[1];
|
|
}
|
|
|
|
@list1 = sort { $a <=> $b } @list1;
|
|
@list2 = sort { $a <=> $b } @list2;
|
|
|
|
my $elementwise_diff = 0;
|
|
for (my $i = 0; $i < @list1; $i++) {
|
|
my $diff = abs($list1[$i] - $list2[$i]);
|
|
$elementwise_diff += $diff;
|
|
}
|
|
|
|
print $elementwise_diff . "\n";
|
|
|
|
my $similarity_score = 0;
|
|
for my $element (@list1) {
|
|
$similarity_score += $element * grep { $_ == $element } @list2;
|
|
}
|
|
|
|
print $similarity_score . "\n";
|