Python! Компьютерная игра Вы можете вспомнить хоть одного своего знакомого до двадцатилетнего возраста, который в детстве не играл в компьютерные игры? Если да, то может быть вы и сами не знакомы с этим развлечением? Впрочем, трудностей при решении этой задачи это создать не должно.
Во многих старых играх с двумерной графикой можно столкнуться с подобной ситуацией. Какой-нибудь герой прыгает по платформам (или островкам), которые висят в воздухе. Он должен перебраться от одного края экрана до другого. При этом при прыжке с одной платформы на соседнюю у героя уходит |y2–y1| единиц энергии, где y1 и y2 — высоты, на которых расположены эти платформы. Кроме того, у героя есть суперприём, который позволяет перескочить через платформу, но на это затрачивается 3⋅|y3–y1| единиц энергии. Конечно же, энергию следует расходовать максимально экономно.
Предположим, что вам известны координаты всех платформ в порядке от левого края до правого. Сможете ли вы найти, какое минимальное количество энергии потребуется герою, чтобы добраться с первой платформы до последней?
Входные данные
В первой строке записано количество платформ n (1 ≤ n ≤ 30000). Вторая строка содержит n натуральных чисел, не превосходящих 30000 — высоты, на которых располагаются платформы.
Выходные данные
Выведите единственное число — минимальное количество энергии, которую должен потратить игрок на преодоление платформ (конечно же, в предположении, что cheat-коды использовать нельзя).
Примеры
Ввод
2
100 1
Вывод
99
Ввод
3
1 100 80
Вывод
119
Чтобы было понятней, приведу такой пример. Возьмём любые школьные предметы. Школьник бы записывал каждый предмет в отдельную тетрадку, а компьютеру достаточно бы было и рулона туалетной бумаги, простите за такое сравнение, т.е. компьютер последовательно записывает информацию и не важно в каком порядке она ему предоставляется. Как Вы думаете, если бы школьник попросил переписать конспект у компьютера, сколько времени он бы потратил!? Думаю чень много.
Таким образом, файлы, в нашем примере это тетрадки школьника, значительно облегчают человеку работу с информацией. Как и в тетрадках, в файлах храниться определённый тип информации. Есть текстовые файлы, графические файлы, звуковые файлы, видео файлы, файлы-программы и т.д.
Каждый файл имеет размер и состоит из названия и расширения. Размер файлов это тема для отдельного урока, поэтому поговорим про это чуть позже. Название файла может состоять из цифр, символов латинского, национального алфавитов и знака дефиса. Допускается запись имен как большими, так и маленькими буквами. Предельная длина имени файла с учетом пробелов и расширения не может составлять более 255 символов. В именах файлов не допускаются такие символы: \, /, :, *, ?, «, <, >, |, [, ], {, }.
Расширение файла – это три символа отделённых от названия файла точкой. Расширение компьютеру и человеку понять, какой тип информации содержится в файле. Например «.txt» - это текстовый файл, «.jpg» или «.bmp» - это графические файлы, «.mp3» или «.wav» - это музыкальные файлы, «.avi» или «.vob» - это видео файлы и т.д. По расширению компьютер понимает, какую программу надо запустить, чтобы обработать выбранный пользователем файл. Например, для открытия «.txt» файла компьютер запустит «Блокнот» - служебная программа Windows, для открытия «.doc» файла компьютер запустит Microsoft Word и т.д.
Если файл будет без расширения, тогда Windows не сможет сама открыть выбранный файл, т.к. она не будет знать какая программа должна открыть этот файл. В таком случае Windows просто спросит у Вас, с какой программы ей открыть файл без расширения. Тоже самое произойдёт, если не установлена программа, которая знает как работать с типом данным, содержащимся в данном файле, даже если файл будет с расширением.
Теперь давайте разбираться, что такое Папка. Папка – это тоже хранилище информации, а точнее хранилище файлов и других папок. Т.е. в папке могут содержаться файлы разных типов: и текст, и графика, и музыка, и видео и т.д. Папка создается для того, чтобы каким-то образом упорядочить информацию, упорядочить файлы и папки. Если вернуться к примеру со школьником, то в качестве папки у него есть портфель. В портфель он складывает нужные ему именно сегодня учебники и тетрадки, т.е. школьник упорядочивает информацию согласно расписания уроков. А уроков у него конечно же не один, и чтобы не терять время, организованные школьники складывают учебники и тетрадки по разным предметам в разные отделения портфеля. Если перевести это на компьютерный язык, то школьник создает подпапку.Кстати, у папки, как и у файла, есть название и размер, а вот расширение папке не нужно.