aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuis Mochan <mochan@fis.unam.mx>2023-03-21 12:58:18 -0600
committerLuis Mochan <mochan@fis.unam.mx>2023-03-21 12:58:18 -0600
commitecdc3f8651ad777dfac7a10d4af0aee18ef4f772 (patch)
tree931c33392bd4cb36924a5336c687535d35bf2aec
parentcff5708de2aaa2ac6b2ba4d4fcb53d1f90c1d538 (diff)
downloadperlweeklychallenge-club-ecdc3f8651ad777dfac7a10d4af0aee18ef4f772.tar.gz
perlweeklychallenge-club-ecdc3f8651ad777dfac7a10d4af0aee18ef4f772.tar.bz2
perlweeklychallenge-club-ecdc3f8651ad777dfac7a10d4af0aee18ef4f772.zip
Correct mistake
-rwxr-xr-xchallenge-209/wlmb/perl/ch-2.pl10
1 files changed, 5 insertions, 5 deletions
diff --git a/challenge-209/wlmb/perl/ch-2.pl b/challenge-209/wlmb/perl/ch-2.pl
index 1210214470..e11b229f2c 100755
--- a/challenge-209/wlmb/perl/ch-2.pl
+++ b/challenge-209/wlmb/perl/ch-2.pl
@@ -12,13 +12,13 @@ while(<>){
chomp;
my ($name, @addresses)=split / /;
$names[$INPUT_LINE_NUMBER] = $name;
+ $merge_to{$INPUT_LINE_NUMBER}=$INPUT_LINE_NUMBER; # merge to itself
for(@addresses){
- $merge_to{$INPUT_LINE_NUMBER} =
- $merge_to{$line_of{$_}} # previously merged or undef
- if defined $line_of{$_}; # address has been seen before
- $line_of{$_}//=$INPUT_LINE_NUMBER; # map to current line if not seen before
+ my $l=$line_of{$_};
+ $line_of{$_}=$INPUT_LINE_NUMBER;
+ # merge overlapping accounts with current one
+ $merge_to{$l}=$merge_to{$merge_to{$l}}=$INPUT_LINE_NUMBER if defined $l;
}
- $merge_to{$.}//=$INPUT_LINE_NUMBER; # merge to itself if not already merged
}
my @addresses = keys %line_of; # distinct addresses
my %merged; # merged accounts