c++ algorithm (UVa, sicily, poj)