Республиканская олимпиада по информатике 2009 год
Задача A. Муха
Ограничение по времени:
0.5 секунды
Ограничение по памяти:
256 мегабайт
Из двух городов, находящихся на расстоянии D, в момент времени 0 навстречу друг другу выехали два велосипедиста со скоростью V1 и V2 соответственно. Одновременно с первым велосипедистом из первого города навстречу второму вылетела муха со скоростью W (W≥max(V1,V2)). Когда муха долетает до второго велосипедиста, она мгновенно разворачивается и летит обратно. Долетев до первого велосипедиста, она опять разворачивается и так далее. Определите, сколько раз развернется муха строго до момента времени T.
Формат входного файла
Входной файл содержит 5 неотрицательных целых чисел: D, V1, V2, W, T (T⋅(V1+V2)<D). Никакое из чисел не превышает 107.
Формат выходного файла
Выходной файл должен содержать одно целое число — ответ к задаче.
Пример:
Вход 10 0 0 10 10Ответ
9Вход
20 1 2 3 4Ответ
0
комментарий/решение Проверить мое решение
Задача B. Фокус
Ограничение по времени:
2 секунды
Ограничение по памяти:
256 мегабайт
Помните про фокус с мухами, который изобрел Баха? Жома решил посоревноваться с ним и придумал свой фокус! У Жомы есть ящик. Он может запускать туда муху или выпускать. Также, он как хороший дрессировщик знает возраст каждой мухи в минутах с момента ее рождения. А фокус заключается вот в чем: в любой момент он может назвать возраст K-й по старшинству мухи, которая находится в ящике среди мух с возрастом от A до B включительно. Попробуйте и вы сделать этот фокус!
Формат входного файла
Первая строка входного файла содержит число N — общее количество событий (1≤N≤2⋅105). Далее следует N строк, каждая из которых описывает одно из событий:
- +X — в ящик впустили муху с возрастом X;
- −X — из ящика выпустили муху с возрастом X;
- ?KAB — у фокусника спросили возраст K-й по старшинству мухи в ящике среди мух с возрастом от A до B включительно (1≤K≤105, A≤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≤N≤10). Каждая строка состоит только из строчных букв английского алфавита ('a'...'z'). Третья строка содержит число A, четвертая — B, 0≤A,B≤N.
Формат выходного файла
Выходной файл должен содержать ответ к задаче — количество возможных паролей.
Пример:
Вход ab ac 1 1Ответ
24Возможные пароли в примере: aa, ad, ae, ... az.
комментарий/решение
Задача D. Делители
Ограничение по времени:
2 секунды
Ограничение по памяти:
256 мегабайт
Вам дано несколько чисел. Для каждого из чисел посчитайте количество делителей.
Формат входного файла
Первая строка входного файла содержит число N — количество чисел, для которых нужно посчитать количество делителей (1≤N≤50).
Каждая из следующих N строк содержит одно целое число в пределах от 1 до 1014.
Формат выходного файла
В выходной файл выведите N строк — по одной строке для каждого числа из входного файла. Каждая строка должна содержать одно число — количество делителей соответствующего числа.
Пример:
Вход 2 1 6Ответ
1 4
комментарий/решение
Задача E. Путь в дереве
Ограничение по времени:
2 секунды
Ограничение по памяти:
256 мегабайт
Бесконечным троичным деревом назовем дерево, каждая вершина которого имеет ровно 3 потомка. В вершинах дерева написаны числа по следующему правилу:
- в корне дерева написано 1;
- пусть в некоторой вершине написано X, тогда в левом сыне этой вершины будет написано X⋅3, в среднем — X⋅3+1, в правом — X⋅3+2.
- L — в левого сына
- C — в среднего сына
- R — в правого сына
- S — стоять на месте
- ∗ — означает любой из предыдущих символов (L, C, R, S)
Формат входного файла
Входной файл содержит строку длиной от 1 до 16 символов — шаблон пути.
Формат выходного файла
В выходной файл выведите одно число — ответ к задаче.
Пример:
Вход *LSОтвет
55
комментарий/решение
Задача F. Физкультура
Ограничение по времени:
2 секунды
Ограничение по памяти:
256 мегабайт
В список предметных олимпиад школьников решили, наконец, внести и физкультуру. Оргкомитет должен подготовить маршрут, по которому будет проводиться соревнование по бегу. Для проведения соревнований была выделена прямоугольная территория, которую для удобства разделили на квадраты так, что получилась сетка N×M. Для каждого квадрата была определена стоимость его подготовки к соревнованиям. Также были определены квадраты, в которых должен начинаться и оканчиваться маршрут. Маршрутом будем считать такую последовательность квадратов, что каждые два соседних квадрата в этой последовательности имеют общую сторону. Ваша задача — помочь оргкомитету выбрать маршрут так, чтобы стоимость подготовки его к соревнованиям была минимально возможной.
Формат входного файла
Первая строка входного файла содержит два целых числа: N и M (1≤N,M≤200) — размеры территории.
Каждая из следующих N строк содержит по M целых чисел в пределах от 1 до 100 — стоимость подготовки соответствующего квадрата к соревнованиям.
Следующая строка содержит 2 целых числа — номер строки и столбца для квадрата, в котором должен начинаться маршрут. Следующая строка содержит 2 целых числа — номер строки и столбца для квадрата, в котором должен заканчиваться маршрут.
Маршрут начинается и заканчивается в разных квадратах. Числа в строках разделены пробелами.
Формат выходного файла
На первой строке выходного файла выведите наименьшую суммарную стоимость подготовки маршрута, а на следующих строках — карту маршрута. Карта маршрута — это таблица размера N×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
комментарий/решение