Заметим, что если в списке передвижений есть как передвижения влево, так и вправо, то ответ заведомо "YES", потому что одно из этих передвижений можно сделать на бесконечность, а второе — такое, чтобы все сошлось.
Если же все передвижения одного типа, то:
- Обозначим за cntL количество передвижений влево, за cntR — вправо;
- Если cntL = 0, то есть передвижения были только вправо, требуется проверить, что cntR ≤ x, потому что хотя бы на cntR существо передвинулось.
- Если же cntR = 0, требуется проверить, что x ≤ - cntL.