use strict; use warnings; my @array1 = ( 1, 2, 5, 9, 11, 12, 13 ); my @array2 = ( 1, 2, 5, 11, 12, 13 ); my @array3 = ( 1, 2, 5, 7, 9, 12, 13 ); use Set::Scalar; my $x = Set::Scalar->new(@array1); my $y = Set::Scalar->new(@array2); my $z = Set::Scalar->new(@array3); # Either way works. #my $answer = $x->union($y,$z) # - $x->unique($y,$z) # - $x->intersection($y,$z); my $answer = ($x + $y + $z) - ($x / $y / $z) - ($x * $y * $z); my @only_two = $answer->elements();