Descriptions:

Surprising Strings

POJ - 3096