title: O(nlogn) Algorithm - Find three evenly spaced ones within binary string
body: <p>I had this question on an Algorithms test yesterday, and I can't figure out the answer.  It is driving me absolutely crazy, because it was worth about 40 points.  I figure that most of the class didn't solve it correctly, because I haven't come up with a solution in the past 24 hours.</p>
  
  <p>Given a arbitrary binary string of length n, find three evenly spaced ones within the string if they exist.  Write an algorithm which solves this in O(n * log(n)) time.</p>
  
  <p>So strings like these have three ones that are "evenly spaced": 11100000, 0100100100</p>
  
  <p>edit: It is a random number, so it should be able to work for any number.  The examples I gave were to illustrate the "evenly spaced" property.  So 1001011 is a valid number. With 1, 4, and 7 being ones that are evenly spaced.</p>