adventofcode/2015/12/a.pl

21 lines
368 B
Perl
Raw Normal View History

2017-12-05 20:12:32 +00:00
use 5.20.0;
use List::AllUtils qw/ sum /;
use File::Serialize;
use experimental 'signatures', 'smartmatch';
my $data = deserialize_file shift;
say add($data);
sub add($data) {
given ( ref $data ) {
return sum map { add($_) } @$data when 'ARRAY';
return sum map { add($_) } values %$data when 'HASH';
default { return 0 + $data };
}
}