• RSS ZoeAndGavin.com

    • An error has occurred; the feed is probably down. Try again later.
  • Top Posts

  • Advertisements

Code Golf – Home On The Range

Home On The Range

It’s as simple as “1 2 3 5 6 8” => “1-3, 5-6, 8.”

The Problem

It’s difficult to spot what’s missing in a long list of numbers if they are just listed one after the other. You can make it easier by organising the numbers into ranges, and that’s exactly what you’re going to do here.

Your program will receive a set of space-separated numbers on stdin, and it will be expected to print a set of ranges on stdout formatted according to the following rules :

  • Numbers which appear sequentially in the input should be grouped with the first number and last number in the sequence separated by a hyphen.
  • Numbers which appear in the input on their own should not be collapsed into a range.
  • Ranges and single numbers in your output should be separated by a comma and a space (“, “), and the list of ranges should end with a full-stop (“.“)


  • 1 2 3” => “1-3.
  • 1 2 3 5 7 8” => “1-3, 5, 7-8.
  • 1 3 4 5 7” => “1, 3-5, 7.

Other Information

  • Your program will be ran three times with increasingly more numbers.
  • There will be a maximum of 500 numbers given to your program, and the maximum value of an individual number will be 500.
  • The numbers will be given in ascending order.
  • The input to each of the three runs will be different each time you upload an entry.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: