Кстати, а он вообще учитывает, что условия задачи допускают исходные ситуации, когда решения нет?
Исправить ее можно просто игнорируя неожиданное состояние автомата парсинга. Например двойка была неожиданной