Формат входного файла: В первой строке входного файла

advertisement
Задача1. Морской бой
«Морской бой» очень популярен среди учеников одной физико-математической школы города N. Ребята
очень любят в него играть на переменах. Вот и сейчас ученики 10-β класса Иннокентий и Емельян начали
новую партию.
Правила, по которым ребята расставляют корабли перед началом партии, несколько отличаются от
классических. Во-первых, игра происходит на поле размером n × m, а не 10 × 10. Во-вторых, число
кораблей, их размер и форма выбираются ребятами перед партией — так играть намного интереснее.
Емельян уже расставил все свои корабли, кроме одного однопалубного. Такой корабль занимает ровно
одну клетку. Задана расстановка кораблей Емельяна. Найдите число способов поставить оставшийся
однопалубный корабль. При этом учитывайте, что по правилам его можно ставить только в ту клетку, все
соседние с которой не заняты. В этой задаче соседними считаются клетки, имеющие общую сторону.
44
****
**..
*...
*...
43
***
...
...
***
4
0
Формат входного файла: Первая строка входного файла содержит два числа: n и m (1 ≤ n,m ≤ 100). Последующие n строк
описывают игровое поле — каждая из них содержит m символов. Символом «.» (точка) обозначена свободная клетка,
символом «*» (звездочка) — занятая кораблем.
Формат выходного файла: В выходной файл выведите ответ на задачу.
Задача 2. Турист
Гена собирается на туристический слет учеников своей школы. В своем классе он был назначен ответственным за
палатки. У себя дома он нашел 3 палатки: первая из них весит a1 килограмм и вмещает b1 человек, вторая весит a2 килограмм
и вмещает b2 человек, третья весит a3 килограмм и вмещает b3 человек. В классе Гены k человек. Выясните, может ли он
выбрать палатки так, чтобы в них все могли поместиться. При этом учитывайте, что выбранные палатки должны суммарно
весить не более w килограмм.
Формат входного файла: Первая строка входного файла содержит два целых числа: k и w (1 ≤ k ≤ 15, 1 ≤ w ≤ 30). Вторая
строка содержит шесть целых чисел: a1, b1, a2, b2, a3, b3 (1 ≤ a1,a2,a3 ≤ 10, 1 ≤ b1,b2,b3 ≤ 15).
10 10
YES
556645
Формат выходного файла: В выходной файл выведите YES, если палатки указанным образом
10 10
NO
выбрать можно, и NO — в противном случае.
556677
Задача 3. Зайцы в клетках.
Всем известен так называемый принцип Дирихле, который формулируется следующим образом.
Предположим, что некоторое число кроликов рассажены в клетках. Если число кроликов больше, чем число клеток, то
хотя бы в одной из клеток будет больше одного кролика.
В данной задаче мы рассмотрим более общий случай этого классического математического факта. Пусть есть N клеток и
M зайцев, которых рассадили по этим клеткам. Вам требуется расcчитать максимальное количество зайцев, которое
гарантированно окажется в одной клетке.
Формат входного файла: В первой строке входного файла записаны два натуральных числа N и M (1 ≤ N,M ≤ 109).
Формат выходного файла: В выходной файл выведите ответ на задачу.
23
2
Задача 4. Робот
Робот Р-2008-2009 предназначен для исследования просторов Флатландии, которые, как известно, представляют собой
части плоскости, разбитые на единичные квадраты (клетки) вертикальными и горизонтальными прямыми. Программы для
этого робота достаточно просты, так как написаны на языке программирования, который содержит всего четыре команды.
Эти команды таковы: сдвинуться на клетку вверх — U; сдвинуться на клетку вниз — D; сдвинуться на клетку
влево — L; сдвинуться на клетку вправо — R.
Ваша задача состоит в написании программы, которая будет анализировать некоторые свойства программы для робота
Р-2008-2009, — а именно, предположим, что исследуемая область представляет собой бесконечную во всех четырех
направлениях плоскость. Задана программа для робота Р-2008-2009. Необходимо найти число клеток плоскости, которые он
посетит более одного раза. Заметим, что это число не зависит от того, в какой клетке изначально находится робот.
1
Формат входного файла: Первая строка входного файла содержит программу для робота. Она состоит только из символов U,
D, L, R. Ее длина положительна и не превосходит 1000 символов.
Формат выходного файла: В выходной файл выведите ответ на задачу.
ULDR
1
URLD
2
Задача 6. Трафарет
Девочкам Оле и Тане стало скучно на лекции по дискретной математике. Чтобы развеселить себя чем-нибудь, Оля взяла
листочек в клетку высотой a и шириной b клеток, а Таня — высотой h и шириной w клеток. Оля заполнила каждую клетку
своего листочка целым числом, а Таня решила поступить иначе. Она приложила свой листочек к Олиному так, что его
верхняя левая клетка совпала с клеткой Олиного листочка, находящейся на пересечении i-й строки и j-го столбца. После
этого Таня аккуратно вырезала некоторые клетки своего листочка, таким образом получив трафарет (при вырезании Таня не
задела Олин листочек). Затем Оля посчитала сумму чисел, находившихся под клетками, которые вырезала Таня. Чему же
была равна эта сумма?
Формат входного файла: В первой строке входного файла записаны два натуральных числа a и b (1
≤ a,b ≤ 100). Последующие a строк описывают Олин листочек — каждая из них содержит b целых
чисел, по абсолютной величине не превосходящих 105. Следующая строка содержит числа h и w (1
≤ h,w ≤ 100). Последующие h строк описывают Танин трафарет — каждая из них содержит w
символов. Символом «.» (точка) обозначена вырезанная клетка, символом «*» (звездочка) —
оставшаяся целой. Последняя строка содержит числа i и j. Гарантируется, что трафарет полностью
лежит на Олином листочке.
22
21 32
43 54
22
.*
*.
11
75
Формат выходного файла: В выходной файл выведите полученную Олей сумму.
Задача 7. Транспортные узлы
В стране N-мерике n городов. Некоторые из них соединены двухсторонними дорогами — всего в стране m дорог. Из
некоторых городов выходит одна дорога, а некоторые являются настоящими транспортными узлами — из них выходит
достаточно много дорог. В этой задаче будем называть город транспортным узлом, если из него выходит хотя бы k дорог.
Задано описание дорожной сети N-мерики. Необходимо найти все ее транспортные узлы.
Формат входного файла: Первая строка входного файла содержит число n городов (1 ≤ n ≤ 10000) и число m
дорог (0 ≤ m ≤ 100000). Каждая из последующих m строк описывает одну дорогу и содержит два числа u и
v (1 ≤ u, v ≤ n, u≠v) — номера городов, соединенных дорогами. Последняя строка входного файла содержит
целое число k (1 ≤ k ≤ 10000). Каждая дорога упоминается во входном файле не более одного раза.
21
12
1
2
12
Формат выходного файла: В первой строке выведите число c транспортных узлов. Во второй строке
выведите их номера в порядке возрастания.
43
12
13
14
3
1
1
2
Download