ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1247. Проверка последовательности

Надоело писать на чужом языке. Решение на русском.
Послано Mahilewets 18 июл 2017 22:28
Так как сумма всех элементов последовательности равна (S+N),  то сумма всех элементов последовательности,  в которой каждый элемент уменьшен на единицу,  равна просто N.

Тогда если мы найдём в такой последовательности с уменьшенными членами отрезок с максимальной суммой и сравним сумму на нем с числом N,  то мы узнаем ответ на задачу.

А именно,  если эта сумма превосходит N,  то ответ "NO".
В противном случае, ответ "YES".

Отрезок с максимальной суммой ищется за O(n)  методом кумулятивных сумм.