#! /usr/bin/perl -w use strict; my $start = <>; chomp $start; my $end = <>; chomp $end; while (defined $start) { if (not defined $end) { print $start; undef $start; } elsif ($start + 1 != $end) { print "$start,"; $start = $end; $end = <>; chomp $end if defined $end; } else { my $newend = $end; do { $end = $newend; $newend = <>; chomp $newend if defined $newend; } while defined $newend and $newend == $end + 1; print "$start-$end"; print "," if defined $newend; $start = $newend; if (defined $start) { $end = <>; chomp $end if defined $end; } } } print "\n";