Моё решение div. 2 B round #92 не прошло по времени. Сейчас я его поправил и оно проходит тесты, но что интересно сложность по-идее у него такая же. Вот если кому интересно оба варианта тут: http://pastebin.com/scSwyuEq. Быстрая функция -- f, а медленная f1 (если захотите запустить медленную, то надо поменять имена.).
Если нужно быстро преобразовать в int - sscanf (stdio.h) либо atoi (stdlib.h).