Республиканская олимпиада по информатике 2009 год
Задача A. Муха
Ограничение по времени:
0.5 секунды
Ограничение по памяти:
256 мегабайт
Из двух городов, находящихся на расстоянии $D$, в момент времени $0$ навстречу друг другу выехали два велосипедиста со скоростью $V_1$ и $V_2$ соответственно. Одновременно с первым велосипедистом из первого города навстречу второму вылетела муха со скоростью $W$ ($W \ge max(V_1, V_2)$). Когда муха долетает до второго велосипедиста, она мгновенно разворачивается и летит обратно. Долетев до первого велосипедиста, она опять разворачивается и так далее. Определите, сколько раз развернется муха строго до момента времени $T$.
Формат входного файла
Входной файл содержит $5$ неотрицательных целых чисел: $D$, $V_1$, $V_2$, $W$, $T$ ($T \cdot (V_1 + V_2) < D$). Никакое из чисел не превышает $10^7$.
Формат выходного файла
Выходной файл должен содержать одно целое число — ответ к задаче.
Пример:
Вход 10 0 0 10 10Ответ
9Вход
20 1 2 3 4Ответ
0
комментарий/решение Проверить мое решение
Задача B. Фокус
Ограничение по времени:
2 секунды
Ограничение по памяти:
256 мегабайт
Помните про фокус с мухами, который изобрел Баха? Жома решил посоревноваться с ним и придумал свой фокус! У Жомы есть ящик. Он может запускать туда муху или выпускать. Также, он как хороший дрессировщик знает возраст каждой мухи в минутах с момента ее рождения. А фокус заключается вот в чем: в любой момент он может назвать возраст $K$-й по старшинству мухи, которая находится в ящике среди мух с возрастом от $A$ до $B$ включительно. Попробуйте и вы сделать этот фокус!
Формат входного файла
Первая строка входного файла содержит число $N$ — общее количество событий ($1 \le N \le 2 \cdot 10^5$). Далее следует $N$ строк, каждая из которых описывает одно из событий:
- $+ X$ — в ящик впустили муху с возрастом $X$;
- $- X$ — из ящика выпустили муху с возрастом $X$;
- $? K A B$ — у фокусника спросили возраст $K$-й по старшинству мухи в ящике среди мух с возрастом от $A$ до $B$ включительно ($1 \le K \le 10^5$, $A \le B$);
Формат выходного файла
Выходной файл должен содержать такое же количество строк, сколько запросов возраста было во входном файле. Для каждого такого запроса нужно вывести строку, содержащую соответствующее число — ответ на запрос. При этом, если при количество мух с возрастом от $A$ до $B$ в ящике меньше $K$, то нужно вывести $0$.
Пример:
Вход 8 + 2 + 3 + 2 ? 2 2 3 - 2 ? 2 2 3 - 2 ? 2 2 3Ответ
2 3 0
комментарий/решение
Задача C. Восстановление пароля
Ограничение по времени:
2 секунды
Ограничение по памяти:
256 мегабайт
Жома любит использовать длинные и сложные пароли. И, как это обычно бывает, он забыл... Забыл пароль от домашнего компьютера и теперь не может поиграть в новую NFS! Он очень расстроен и даже пару раз попытался вспомнить свой пароль. Но, увы, ничего не получилось. Однако он уверен, что при первой попытке он не ошибся ровно в $A$ символах, а при второй — ровно в $B$, но он не знает, какие именно символы были введены без ошибок. И тут его заинтересовало, сколько же паролей удовлетворяют заданным условиям?
Формат входного файла
Первая строка содержит первую попытку ввода пароля, вторая строка — вторую. Длины обеих строк одинаковы и равны $N$ ($1 \le N \le 10$). Каждая строка состоит только из строчных букв английского алфавита ('$a$'...'$z$'). Третья строка содержит число $A$, четвертая — $B$, $0 \le A, B \le N$.
Формат выходного файла
Выходной файл должен содержать ответ к задаче — количество возможных паролей.
Пример:
Вход ab ac 1 1Ответ
24Возможные пароли в примере: $aa$, $ad$, $ae$, ... $az$.
комментарий/решение
Задача D. Делители
Ограничение по времени:
2 секунды
Ограничение по памяти:
256 мегабайт
Вам дано несколько чисел. Для каждого из чисел посчитайте количество делителей.
Формат входного файла
Первая строка входного файла содержит число $N$ — количество чисел, для которых нужно посчитать количество делителей ($1 \le N \le 50$).
Каждая из следующих $N$ строк содержит одно целое число в пределах от $1$ до $10^{14}$.
Формат выходного файла
В выходной файл выведите $N$ строк — по одной строке для каждого числа из входного файла. Каждая строка должна содержать одно число — количество делителей соответствующего числа.
Пример:
Вход 2 1 6Ответ
1 4
комментарий/решение
Задача E. Путь в дереве
Ограничение по времени:
2 секунды
Ограничение по памяти:
256 мегабайт
Бесконечным троичным деревом назовем дерево, каждая вершина которого имеет ровно $3$ потомка. В вершинах дерева написаны числа по следующему правилу:
- в корне дерева написано $1$;
- пусть в некоторой вершине написано $X$, тогда в левом сыне этой вершины будет написано $X \cdot 3$, в среднем — $X \cdot 3 + 1$, в правом — $X \cdot 3 + 2$.
- $L$ — в левого сына
- $C$ — в среднего сына
- $R$ — в правого сына
- $S$ — стоять на месте
- $*$ — означает любой из предыдущих символов ($L$, $C$, $R$, $S$)
Формат входного файла
Входной файл содержит строку длиной от $1$ до $16$ символов — шаблон пути.
Формат выходного файла
В выходной файл выведите одно число — ответ к задаче.
Пример:
Вход *LSОтвет
55
комментарий/решение
Задача F. Физкультура
Ограничение по времени:
2 секунды
Ограничение по памяти:
256 мегабайт
В список предметных олимпиад школьников решили, наконец, внести и физкультуру. Оргкомитет должен подготовить маршрут, по которому будет проводиться соревнование по бегу. Для проведения соревнований была выделена прямоугольная территория, которую для удобства разделили на квадраты так, что получилась сетка $N \times M$. Для каждого квадрата была определена стоимость его подготовки к соревнованиям. Также были определены квадраты, в которых должен начинаться и оканчиваться маршрут. Маршрутом будем считать такую последовательность квадратов, что каждые два соседних квадрата в этой последовательности имеют общую сторону. Ваша задача — помочь оргкомитету выбрать маршрут так, чтобы стоимость подготовки его к соревнованиям была минимально возможной.
Формат входного файла
Первая строка входного файла содержит два целых числа: $N$ и $M$ ($1 \le N, M \le 200$) — размеры территории.
Каждая из следующих $N$ строк содержит по $M$ целых чисел в пределах от $1$ до $100$ — стоимость подготовки соответствующего квадрата к соревнованиям.
Следующая строка содержит $2$ целых числа — номер строки и столбца для квадрата, в котором должен начинаться маршрут. Следующая строка содержит $2$ целых числа — номер строки и столбца для квадрата, в котором должен заканчиваться маршрут.
Маршрут начинается и заканчивается в разных квадратах. Числа в строках разделены пробелами.
Формат выходного файла
На первой строке выходного файла выведите наименьшую суммарную стоимость подготовки маршрута, а на следующих строках — карту маршрута. Карта маршрута — это таблица размера $N \times M$, в $j$-м столбце $i$-й строки которой расположен $0$, если через соответствующих квадрат не проходит ни один маршрут, и $1$, если через него проходит маршрут. Если оптимальных ответов несколько, то выведите любой.
Числа в строках разделяйте пробелом.
Пример:
Вход 3 3 1 1 1 1 1 1 10 1 1 1 1 3 3Ответ
5 1 0 0 1 1 0 0 1 1
комментарий/решение