Алгоритмы(1657 задач)
Структуры данных(279 задач)
Интерактивные задачи(17 задач)
Другое(54 задач)
Компания RectanGas занимается добычей нефти уже с незапяматных времен и является бесспорным лидером в своей области. Маркетологи считают, что она стала такой успешной благодаря бессменному исполнительному директору. На нем стоит остановиться поподробнее.
Дело в том, что исполнительный директор совсем не изучал геометрию в школе и до сих пор считает, что кроме прямоугольников других геометрических фигур не существует. Более того, он никак не может поверить, что стороны прямоугольников могут быть не параллельными осям координат. Поэтому все нефтяные вышки строятся следующим образом: директор на карте отмечает четыре точки так, чтобы они образовывали прямоугольник со сторонами, параллельными осям координат карты, и приказывает строить нефтяные вышки на участках, соответствующим отмеченным точкам на карте. Эти нефтяные вышки за короткий промежуток времени добывают всю нефть, расположенную на соответствующем участке.
Компания RectanGas почти выполнила свой план по добыче нефти на май 2010 года. Для этого ей осталось добыть ровно S баррелей нефти. Заметим, что больше добывать нельзя, иначе компанию обвинят в монополии. Меньше добывать тоже нельзя, потому что исполнительный директор, будучи человеком пунктуальным, очень огорчится, что повлечет за собой увольнение сотрудников и всеобщую безработицу. Геологи, подробно изучив карту местности, определили количество залежей нефти на каждом участке и попросили Вас написать программу, определяющую координаты будущих нефтяных вышек с учетом всех требований.
Первая строка содержит три числа: размеры карты местности n и m и план по добыче нефти S ( 2 ≤ n , m ≤ 300 ; 0 ≤ S ≤ 10 7 ). Далее следуют n строк по m чисел a ij — количество залежей нефти на соответсвующем участке ( 0 ≤ a ij ≤ 10 6 )
В случае, если увольнения не миновать, выведите « - 1 » (без кавычек). В противном случае выведите четыре числа — координаты левой верхней и правой нижней вышек соответственно. Если вариантов ответа несколько, то выведите любой из них.
Обратите внимание, в этой задаче TL равен 500 мс.
Иллюстрация к первому примеру:
Сумма значений в угловых вышках равна 1 + 5 + 2 + 8 = 16
3 3 16 1 3 5 2 4 8 6 9 7
1 1 2 3
2 3 4 12 6 7 4 9 5
-1
Завтра состоится футбольный матч между двумя знаменитыми командами: Газмясом и Нефтьрыбом. Матч будет проходить на поле длины L и ширины W . Матч будет судить профессиональный футбольный судья в четвертом поколении Вениамин Хлебников.
Быть судьей — ответственное и не всегда безопасное занятие. Поэтому Вениамин решил проработать некоторые игровые эпизоды, которые возникнут в завтрашней игре.
Рассмотрим ситуацию, когда игрок A делает пас игроку B — то есть, передает ему мяч по отрезку, соединяющему точки, в которых находятся игроки. С одной стороны, судья должен хорошо видеть то, что происходит во время паса; с другой стороны, согласно требованиям безопасности, судья не может находиться слишком близко к мячу. Поэтому во время паса судья должен находиться на расстоянии, не меньшем, чем r , и не большем, чем R , от возможного положения мяча. При этом считается, что все то время, в течение которого движется мяч, судья стоит на одном месте. Разумеется, судья должен все время матча находиться на поле.
Так как эти условия достаточно сложны, то даже опытному судье иногда бывает трудно определить, где он должен находиться в момент паса. По этой причине Вениамин хочет перед матчем потренироваться находить те области, где он может находиться, при различных начальных условиях. Для того чтобы сравнить свой ответ с правильным, ему необходима программа, которая по заданным размерам поля, координатам игроков и числам r и R находит площадь тех областей поля, в которых может находиться судья. Помогите ему!
В первой строке входного файла даны два целых положительных числа L и W ( 1 ≤ L , W ≤ 100 ) — длина и ширина поля.
Во второй строке даны целые числа X A , Y A , X B , Y B — координаты игроков A и B соответственно. Так как игроки находятся на поле, то 0 ≤ X A , X B ≤ L , 0 ≤ Y A , Y B ≤ W .
В третьей строке даны целые числа
r
и
R
(
0 <
r
<
R
< 100
). Известно, что
R
≤
D
, где
— расстояние между игроками
A
и
B
.
В выходной файл выведите ответ на задачу. Ответ принимается, если он отличается от корректного не более, чем на 10 - 6 .
20 20 5 10 15 10 5 9
13.956675119742911
В одиннадцатом классе Витя познакомился с игрой Zuma . Она буквально захватила его разум. Целую неделю он, приходя из школы, до часа ночи щелкал мышкой, уничтожал цепочки разноцветных шариков, громко радовался, когда последний шарик оказывался уничтожен, и выражал отчаяние, когда не успевал спастись.
К счастью, скоро настало время выпускных экзаменов, игра была позабыта, а вскоре потерялась при обновлении системы. Освободившееся время Витя потратил с пользой: сдал экзамены на «хорошо» и «отлично», поступил в университет, а через шесть лет, успешно защитив магистерскую диссертацию, устроился на работу ведущим программистом.
Беда пришла, откуда не ждали. Недавно вышла новая версия игры, Zuma 2.0 . В этой версии сюжет игры сделался более разнообразным, в частности, на разных уровнях игры действуют разные правила. Игра снова захватила Витю... простите, теперь уже Виктора Сергеевича. Однако, Виктор Сергеевич осознает, что игру нужно пройти как можно быстрее, чтобы вернуться к своим должностным обязанностям. В частности, ему никак не дается предпоследний уровень, поэтому он просит Вас помочь ему сделать это.
На предпоследнем уровне изначально присутствуют N шаров, которые расположены по окружности. На каждом из шаров изображена прописная латинская буква. Игрок может делать выстрелы, которые уничтожают несколько шаров. А именно, если на уровне осталось не менее пяти шаров, то игрок может выбрать любые пять последовательных шаров и выполнить с ними одно из двух возможных действий:
После выстрела оставшиеся шары смыкаются, вновь образуя окружность.
Если на уровне осталось менее пяти шаров, то игрок получает очки — чем меньше шаров осталось, тем больше очков он получает. Если же осталось пять или более шаров, а выстрел сделать не получается, то уровень считается непройденным.
Вам дана строка, которая состоит из букв, написанных на шарах. Найдите минимальное число шаров, которые можно оставить на уровне, играя оптимально.
Во входном файле дана строка S . Длина строки S составляет от 5 до 20 символов. Строка состоит из прописных латинских букв.
В выходной файл выведите ответ на задачу.
В настоящее время нет единого мнения о том, считать ли букву «Y» гласной или согласной. В английском языке есть примеры ее применения как в качестве гласной (tycoon, salary, rhythm), так и в качестве согласной (year, coyote, way). Чтобы разрешить противоречия, в рамках данной задачи было принято решение считать букву «Y» гласной.
RANGER
4
YELLOW
3
Умный мальчик Вася — начинающий математик. Сегодня у него день рождения: собралось много гостей, все дарят ему подарки — все как обычно. Но его лучший друг Вовочка сделал ему необычный подарок: он подарил ему устройство, на котором был цифровой дисплей. Он отображает N -значное число X , с помощью N индикаторов из семи полосок.
Это устройство очень напоминает электронные часы, только оно показывает время не в обычном формате, а в секундах от какого-то очень важного момента. Это было так давно, что Вовочка и не помнит, какое важное событие произошло, когда он впервые включил свое изобретение.
Он рассказал Васе, что по этим часам можно узнать, когда в следующий раз произойдет какое-нибудь важное событие. Для этого надо взять число, которое сейчас на дисплее и переставив в нем не более чем K палочек получить минимальное число, больше данного. При этом разрешается перемещать палочки из одной цифры в другую. Вовочка уже давно планировал подарить это замечательное изобретение своему лучшему другу, поэтому он расчитал тот момент, когда он будет рассказывать это Васе.
Так как Вася не так хорош в математике как Вовочка, он просит вас написать программу, которая даст ответ на его вопрос.
Первая строка входного файла содержит целое число K ( 1 ≤ K ≤ 100 ). Вторая строка содержит число X ( 0 ≤ X < 10 100000 ).
В выходной файл выведите одно число: ответ на задачу, либо «NO SOLUTION», если ответа не существует.
2 4598
4600
3 888
NO SOLUTION
Лайнландия представляет из себя одномерный мир, являющийся прямой, на котором распологаются N городов, последовательно пронумерованных от 0 до N - 1 . Направление в сторону от первого города к нулевому названо западным, а в обратную "— восточным.
Когда в Лайнландии неожиданно начался кризис, все были жители мира стали испытывать глубокое смятение. По всей Лайнландии стали ходить слухи, что на востоке живётся лучше, чем на западе.
Так и началось Великое Лайнландское переселение. Обитатели мира целыми городами отправились на восток, покинув родные улицы, и двигались до тех пор, пока не приходили в город, в котором средняя цена проживания была меньше, чем в родном.
В первой строке дано одно число N ( 2 ≤ N ≤ 10 5 ) "— количество городов в Лайнландии. Во второй строке дано N чисел a i ( 0 ≤ a i ≤ 10 9 ) "— средняя цена проживания в городах с нулевого по ( N - 1) -ый соответственно.
Для каждого города в порядке с нулевого по ( N - 1) -ый выведите номер города, в который переселятся его изначальные жители. Если жители города не остановятся в каком-либо другом городе, отправившись в Восточное Бесконечное Ничто, выведите - 1 .
10 1 2 3 2 1 4 2 5 3 1
-1 4 3 4 -1 6 9 8 9 -1