Блог пользователя akaGrey

Автор akaGrey, 13 лет назад, По-русски

Приветствую всех!
Ребят поправьте меня пожалуйста, где я допустил ошибку в задаче 81.A. Плагин?
На пятом тесте вердикт - превышен предел времени... Ссылка прилагается.
Заранее благодарю!

  • Проголосовать: нравится
  • +1
  • Проголосовать: не нравится

13 лет назад, # |
Rev. 3   Проголосовать: нравится +3 Проголосовать: не нравится

1) Не 20000, а 20001 (так как завершающий символ \0 необходим);
2) Не 20000, а 200000 (200001);
3) Не i<=l, а i<l (так как нумерация с нуля и i=l -- это уже за концом строки);
3а) Так как у нас в цикле проверяется i+1, то даже i < l-1;
4) На тесте aabb(много раз) очевидно мы выполним n/2 сдвигов в среднем n/2 элементов, т.е. асимптотика решения O(n2), что слишком много для нашего n. Необходимо придумать более эффективный алгоритм.

  • 13 лет назад, # ^ |
      Проголосовать: нравится +3 Проголосовать: не нравится
    Благодарю за подробный ответ! Буду дальше разбираться...