Почему перебор массива более эффективен, чем использование пользовательского ввода непосредственно в C++? [закрыто]C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Почему перебор массива более эффективен, чем использование пользовательского ввода непосредственно в C++? [закрыто]

Сообщение Anonymous »

Описание:
Я работаю над проблемой HackerRank и столкнулся с проблемой производительности. Проблема описана здесь: Deque STL
В примере теста мое решение работает нормально. Однако во всех других тестовых случаях я получаю сообщение об ошибке «Превышен лимит времени». Чтобы улучшить свой код, я реализовал стратегию обновления максимального значения подмассива только в том случае, если текущего максимума больше нет в массиве, и его обновления только в том случае, если следующее значение больше текущего максимума. Несмотря на эти изменения, мне все равно не удалось пройти все тестовые примеры.
Что я пробовал:
После поиска в Интернете я нашел решение от другой пользователь. Между их решением и моим было два основных различия:
  • Я использовал индекс для отслеживания максимального значения, а они использовали само значение.
  • Он создал массив со всеми входными значениями и перебрал его, а я обрабатывал значения шаг за шагом по мере их ввода.
Изначально я думал, что отслеживание значения вместо позиции может улучшить мой код, но я считал, что мой подход к пошаговой обработке входных данных будет более эффективным, поскольку он включает только одну итерацию. Однако, когда я попытался использовать фактические значения вместо индекса, я продолжал получать ошибку «Превышен лимит времени».
Удивительно, но когда я переключился на создание массива и перебор его , я прошел все тестовые случаи.
Мой вопрос:
Почему создание массива и итерация по нему улучшают производительность, даже если для этого требуется такое же количество операций cin, но две итерации?

Подробнее здесь: https://stackoverflow.com/questions/786 ... irectly-in
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Почему перебор массива более эффективен, чем использование пользовательского ввода непосредственно в C++? [закрыто]
    Anonymous » » в форуме C++
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Рекурсивные массивы Php «COUNT_RECURSIVE» и «1», какой из них более эффективен [закрыто]
    Anonymous » » в форуме Php
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Эффективен ли инструмент потока C ++ для общей памяти [закрыто]
    Anonymous » » в форуме C++
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Перебор массива полиморфных объектов
    Anonymous » » в форуме C++
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Перебор двумерного массива
    Anonymous » » в форуме Php
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»