Ямы
시간 제한2초메모리 제한1024 MB
속도 1로 출발해 매 킬로미터마다 속도를 1씩 바꿀 수 있는 차가 각 구간의 제한 속도를 지키면서 최소 시간으로 n킬로미터를 달리는 방법을 구한다.
문제
У Винни-Пуха большая радость --- он купил автомобиль. И теперь, чтобы опробовать покупку, он собрался съездить на нем за медом.
От дома Винни-Пуха до дерева с правильными пчелами, дающими правильный мед, ведет дорога длиной километров. Казалось бы, скорость передвижения на автомобиле там, где живет Винни, не регламентирована, и ехать можно сколь угодно быстро. Однако, если бы все было так просто, Винни бы не стал обращаться к Вам.
В некоторых местах на дороге расположены ямы. И, если Винни-Пух хочет сохранить свое новое авто в целости и сохранности (а он, конечно же, хочет), проезжать километр номер , на котором расположена яма, нужно со скоростью, не превышающей километров в час. Конструкция автомобиля такова, что после каждого проеханного километра он может мгновенно ускориться на один километр в час, замедлиться на эту же скорость или оставить скорость своего движения без изменений. При этом после изменения он будет ровно километр ехать с новой скоростью, после чего снова сможет ее изменить.
Еще одна особенность автомобиля заключается в следующем: он не может мгновенно разогнаться до нужной скорости, зато может мгновенно остановиться (выбросив тормозной парашют). Соответственно, первый километр пути он всегда проедет со скоростью километр в час, а скорость на последнем километре может быть ограничена только наличием на этом километре ям.
Винни любит быструю езду, а еще больше он любит мед. Соответственно, добраться от своего дома до дерева он хочет как можно быстрее. Вас же он попросил определить, за сколько он сможет добраться до дерева и при этом сохранить целым автомобиль.
입력
В первой строке входного файла дано одно целое число () --- длина дороги. В следующей строке дано чисел () --- описание дороги. Если равно , это означает, что соответствующий километр дороги ровный и его можно проезжать с любой скоростью. Иначе километр содержит яму и его можно проехать со скоростью, не превышающей километров в час.
출력
Выведите в выходной файл одно вещественное число --- минимальное количество часов, за которое Винни-Пух доедет до дерева. Ответ должен отличаться от правильного не больше, чем на .