diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2020-04-14 14:38:52 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-14 14:38:52 +0100 |
| commit | 87bb9d4b7ca6dfc6db1ee687b2b751c2724dfcf4 (patch) | |
| tree | 52fe8eaade67af4530ca974cbd2030a3beb6924c | |
| parent | be77a44d43b8fd53557827d6bc6ce0101d05d558 (diff) | |
| parent | 8d8efca3cf48774e45ec7164b74858cdfe3aab9a (diff) | |
| download | perlweeklychallenge-club-87bb9d4b7ca6dfc6db1ee687b2b751c2724dfcf4.tar.gz perlweeklychallenge-club-87bb9d4b7ca6dfc6db1ee687b2b751c2724dfcf4.tar.bz2 perlweeklychallenge-club-87bb9d4b7ca6dfc6db1ee687b2b751c2724dfcf4.zip | |
Merge pull request #1573 from andemark/branch-for-challenge-056
ch-2.pl
| -rw-r--r-- | challenge-056/mark-anderson/perl/ch-2.pl | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/challenge-056/mark-anderson/perl/ch-2.pl b/challenge-056/mark-anderson/perl/ch-2.pl new file mode 100644 index 0000000000..4045c7dae7 --- /dev/null +++ b/challenge-056/mark-anderson/perl/ch-2.pl @@ -0,0 +1,23 @@ +#!/usr/bin/env perl +use Modern::Perl; +use List::Util qw/sum/; +use Tree::DAG_Node; +use feature qw/signatures/; +no warnings qw/experimental::signatures/; + +my $lol = [ [ [ [7], [2], 11 ], 4 ], [ [13], [ [1], 9 ], 8 ], 5 ]; + +my $tree = Tree::DAG_Node->lol_to_tree($lol); + +$tree->walk_down({callback => \&traverse}); + +say for $tree->draw_ascii_tree->@*; + +sub traverse($node, $options) { + unless ($node->daughters) { + my @nodes = reverse ($node->name, (map { $_->name } $node->ancestors)); + say join(" + ", @nodes), " == 22" if (sum @nodes) == 22; + } + + return 1; +} |
