Гистограмма является многоугольником, сформированным из последовательности прямоугольников, выровненных на общей базовой линии. Прямоугольники имеют равную ширину, но могут иметь различные высоты. Например, фигура слева показывает гистограмму, которая состоит из прямоугольников с высотами 2, 1, 4, 5, 1, 3, 3. Все прямоугольники на этом рисунке имеют ширину, равную 1.
Обычно гистограммы используются для представления дискретных распределений, например, частоты символов в текстах. Отметьте, что порядок прямоугольников очень важен. Вычислите область самого большого прямоугольника в гистограмме, который также находится на общей базовой линии. На рисунке справа заштрихованная фигура является самым большим выровненным прямоугольником на изображенной гистограмме.
В первой строке входного файла записано число \(N\) (\(0\) < \(N\) ≤ \(10^6\)) - количество прямоугольников гистограммы. Затем следует \(N\) целых чисел \(h_1 ... h_n\), где \(0\) ≤ \(h_i\) ≤ \(10^9\). Эти числа обозначают высоты прямоугольников гистограммы слева направо. Ширина каждого прямоугольника равна \(1\)
Выведите площадь самого большого прямоугольника в гистограмме. Помните, что этот прямоугольник должен быть на общей базовой линии.
7 2 1 4 5 1 3 3
8
Митя ужасно боится контрольной по физике. поэтому он приготовил шпаргалку - длинный и узкий листочек бумаги, на котором распечатал все самые главные формулы. Листочек получился слишком длинным, чтобы его можно было просто спрятать под тетрадкой. Пришлось его свернуть. Митя сворачивал свой листочек только вдоль линий, параллельных своему первоначально самому короткому краю. Действие свертки вдоль такой линии, тем не менее, может быть выполнено в двух направлениях: свернуть лист бумаги наверх, или свернуть лист бумаги вниз. В обоих случаях две части прямоугольника соединяются аккуратно вместе. Можно обозначить направление сгиба буквой \(A\) , если лист был сложен по часовой стрелке, поворота или буквой \(V\) , означающей поворот против часовой стрелки.
После того, как Митя несколько раз свернул листочек бумаги, он развернул его и взглянул на него сбоку. Получилась странная бумажная "гармошка" - кривая, состоящая из линейных сегментов. "Гармошку" можно развернуть так, чтобы между любыми ее сегментами был бы угол 90 градусов. Вместо того, чтобы готовиться к контрольной по физике, Митя стал писать программу, которая по перечню операций над листом бумаги выведет чертеж получившейся ломаной. Митя свернул уже много шпаргалок, пытаясь найти закономерность получающихся ломаных. Программу у Мити не получается, время идет и Митя наверняка получит двойку по физике, если Вы не поможете ему справиться с задачей!
Входной файл содержит несколько (не более трех) непустых строк, состоящих из символов \(A\) и \(V\), описывающих процесс сворачивания шпаргалки. В первой строке содержится количество таких строк. Длина каждой строки - не более \(200\) символов. Одна строка - это одна Митина шпаргалка.
Для каждой строки исходных данных вывести программу рисования полученной фигуры. Начните рисовать фигуру в точке с координатами (300,420) командой "300 420 moveto". Первый поворот происходит в точке (310,420) с помощью команды "310 420 lineto". Далее продолжайте по часовой стрелке или против часовой стрелки, поворачивая согласно входной строке. Для передвижения используйте последовательность команд "x y lineto" с подходящими координатами. Точки поворота должны быть расположены один от другого на расстоянии 10. Завершите программу командами stroke и showpage.
2 V AVV
300 420 moveto 310 420 lineto 310 430 lineto stroke showpage 300 420 moveto 310 420 lineto 310 410 lineto 320 410 lineto 320 420 lineto stroke showpage
Петя никак не может приучить себя к порядку. Он всегда разбрасывает свои вещи, а потом долго не может отыскать нужный предмет. А, самое главное, в своей комнате от часто устраивает такой беспорядок, что и сам потом не может найти свободное место для работы. Однажды перед школой Пете срочно понадобилось найти диск с любимым мультиком, который он обещал дать своему другу. Но конечно же DVD у Пети тоже в беспорядке, коробки перепутаны, надписи на коробках не соответствуют их содержимому. Поэтому, чтобы найти нужный диск, Петя высыпал их все из коробок на стол и стал лихорадочно перебирать в поисках нужного. Нужный диск Петя все же нашел, а все остальные так и остались лежать на столе. Самое печальное, что перед этим Петя высыпал на стол еще кучу монеток, которые, как известно, тоже являются маленькими дисками А еще раньше Петя завтракал и оставил на столе немытые тарелки. В результате, на столе у Пети остался кошмарный беспорядок!
Маринка - младшая сестренка Пети - решила хоть как-то навести порядок на столе, но диски и прочие вещи трогать она не стала, а просто накрыла прямоугольными листами бумаги те участки стола, где лежали брошенные Петей предметы. Листы бумаги она положила так, что их стороны оказались параллельны краям стола, причем Маринка старалась использовать как можно меньшие листы бумаги. Листы бумаги не могут иметь общих точек (в том числе не допускается и касание листов). Каждый диск может быть накрыт только одним листом бумаги. После проделанной работы Маринке стало интересно узнать, какая площадь стола осталась непокрытой бумагой. Помогите Маринке решить эту задачу!
В первой строке входного файла записаны два целых числа: \(X\), \(Y\) — размеры стола по горизонтали и вертикали (\(0\) < \(X\), \(Y\) ≤ \(1000\)). На второй строке файла находится одно целое число \(N\) - количество дисков на столе (\(0\) ≤ \(N\) ≤ \(100\)). Далее следуют \(N\) строк, каждая из которых содержит \(x[i]\), \(y[i]\), \(r[i]\) - целые координаты центров круглых предметов и радиус. Гарантируется, что круглые предметы полностью находятся на столе и не свисают за край стола.
Выведите площадь стола, свободную от прямоугольных листов бумаги, накрывающих предметы.
10 8 2 4 4 2 6 4 1
60
Задана последовательность цифр. Определите, можно ли расставить между некоторыми из них знаки "+" и "-", так чтобы получилось заданное число \(M\), но никакие промежуточные вычисления не превосходили по модулю \(10000\).
Входные данные содержат две строки: в первой строке - натуральное число \(M\)≤\(20000\), во второй строке - последовательность цифр. Длина входной последовательности не превышает \(200\) символов.
Выведите одно слово YES или NO в зависимости от того, есть решение у задачи или нет.
2009 20009
YES
10 000000050049000
YES
А что будет, если Маринка в задаче \(H\) накроет все разбросанные диски только одной салфеткой? Конечно, салфетку она должна выбрать минимально возможного размера!
В первой строке входного файла записаны четыре целых числа:
\(X\), \(Y\) — размеры стола по горизонтали и вертикали (\(0\) < \(X\), \(Y\) ≤ \(1000\)),
\(R\) - радиус одного диска DVD (\(0\) < \(R\) ≤ \(1000\)),
\(N\) - количество дисков на столе (\(0\) ≤ \(N\) ≤ \(1000\)).
Далее следуют \(N\) строк, каждая из которых содержит \(x[i]\), \(y[i]\) - целые координаты центров дисков. Гарантируется, что диски полностью находятся на столе и не свисают за край стола.
Выведите площадь стола, свободную от одного прямоугольного листа, накрывающего все диски.
10 10 1 3 1 1 2 8 6 4
37