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

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

Здравствуйте!

Пробовал задать этот вопрос через форму "Задать вопрос?" на вкладке "задачи" КРОК-2013 Квалификационный раунд.

Наверное не очень хорошо сюда спрашивать, но мне очень любопытно.

Подскажите пожалуйста как интерпретировать результаты тестирования. Вот номера моих попыток: 3534029 3539327 3539394 3539517 3539521

Везде код одинаков (в последних попытках убрал объявление аргументов в main и return 0; заменил на return EXIT_SUCCESS;)

В последний раз выбрал компилировать с помощью компилятора MS а до этого использовал GCC.

сам же тестировал свои задачи на gcc (linux OpenSUSE 12.3)

Заранее спасибо:)

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

»
13 лет назад, скрыть # |
 
Проголосовать: нравится +1 Проголосовать: не нравится

У вас написано

if(map[i]+map[i+count_step+delta] > map.size()-1-i) ++delta;

без проверки того, что i+count_step+delta меньше размера вектора. А выход за границу массива — это undefined behavior. Таким образом может произойти все что угодно. От Runtime error on test 1 до полного решения.