##
(3,1), (5,2), (7,3), (9,2), (12,0)
##
##
my @intervals = ([3,11], [5,8], [7,11]);
for (@intervals) {
my ($start,$end) = @$_;
$delta{$start}++;
$delta{$end+1}--;
}
my $total = 0;
my @points;
for (sort { $a <=> $b } keys %delta) {
next if $delta{$_} == 0; ## update: added this line
$total += $delta{$_};
push @points, [$_, $total];
}