SPOJ.com solutions