use strict; my @ar1=qw/1 2 2 3 3 3 4 4 4 4/; my @ar2=qw/1 2 3 4/; my %ar2; $ar2{$_} ++ for @ar2; my @ar3 = grep {not($ar2{$_} and $ar2{$_}--)} @ar1; print "$_\n" for @ar3;