#!/usr/bin/perl use Bit::Vector; use Data::Dumper; use strict; my @vecArray; my $x=0; while($x<4){ $vecArray[$x] = Bit::Vector->new(21); my $int = int(rand(21)); my $min = $int; my $max = $int<=20-5 ? $int+5 : $int; $vecArray[$x]->Interval_Fill($min,$max); $x++; } my $set1= Bit::Vector->new(21); $set1->Intersection($vecArray[0],$vecArray[2]); my $start = 0; while ($start < $set1->Size() and my ($min, $max) = $set1->Interval_Scan_inc($start)){ print $min . "-" . $max . "\n"; $start = $max+1 ; }