aboutsummaryrefslogtreecommitdiff
path: root/challenge-086/dave-jacoby/perl/ch-1.pl
blob: 29c2e42e987d5736b0c88877d357785ee5195bc4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/usr/bin/env perl

use strict;
use warnings;
use feature qw{ say signatures state };
no warnings qw{ experimental };

say pair_difference( 7,  ( 10, 8,  12, 15, 5 ) );
say pair_difference( 6,  ( 1,  5,  2,  9,  7 ) );
say pair_difference( 15, ( 10, 30, 20, 50, 40 ) );

sub pair_difference ( $A, @N ) {
    say join ' ', '     ', $A, '--', @N;
    while (@N) {
        my $n = shift @N;
        for my $o (@N) {
            return 1 if $A == $n - $o;
            return 1 if $A == $o - $n;
        }
    }

    return 0;
}