Темы --> Информатика
    Язык программирования(952 задач)
    Алгоритмы(1657 задач)
    Структуры данных(279 задач)
    Интерактивные задачи(17 задач)
    Другое(54 задач)
---> 2656 задач <---
Источники
    Личные олимпиады(938 задач)
    Командные олимпиады(684 задач)
Страница: << 336 337 338 339 340 341 342 >> Отображать по:
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes
Точки сочленения + динамика по дереву

Петя работает в межгалактическом агентстве путешествий. Он часто получает запросы на поиск пути между двумя планетами по доступным межпланетным дорогам. Петя уже сделал по этому поводу целый ряд наблюдений, и сейчас его интересует следующее. Для каждой планеты \(А\) он хочет знать количество пар планет \(В\) и \(С\), таких что любой путь от планеты \(В\) к планете \(С\) проходит через планету \(А\).

Входные данные

Первая строка входного файла содержит два числа \(2 \leq N \leq 20000\) и \(1 \leq M \leq 200000\) – число планет и число дорог соответственно. Далее в \(M\) строках следуют описания дорог. По дорогам можно двигаться в обе стороны. Каждая дорога описывается номерами планет, которые она соединяет. Гарантируется, что от любой планеты можно добраться до любой другой.

Выходные данные

В выходной файл выведите \(N\) чисел – для каждой планеты \(А\) выведите количество пар различных планет, таких что любой путь от одной до другой содержит \(А\).

Примеры
Входные данные
7 9
1 2
1 3
1 4
1 5
1 6
1 7
2 3
4 5
6 7
Выходные данные
18
6
6
6
6
6
6
ограничение по времени на тест
4.0 second;
ограничение по памяти на тест
256 megabytes
Двумерное RMQ

Вам задана таблица целых чисел

\(a_{1, 1}\)\(a_{1, 2}\)...\(a_{1, n}\)
\(a_{1, 1}\)\(a_{2, 2}\)...\(a_{2, n}\)
............
\(a_{m, 1}\)\(a_{m, 2}\)...\(a_{m, n}\)
и последовательность запросов \(Q(x_{i1}, y_{i1}, x_{i2}, y_{i2})\). Для каждого запроса найдите минимальное значение среди значений \(a_{k,l}\), где \(x_{i1} \leq k \leq x_{i2}\) и \(y_{i1} \leq l \leq y_{i2}\).

Входные данные

Первая строка входного файла содержит числа \(m\) и \(n\) — размер таблицы (\(1 \leq m,n \leq 500\)). Следующие m строк содержат по n целых чисел каждая - \(a_{ij}\). Все числа между \(-2^{31}\) и \(2^{31}-1\). Далее следует \(q\) — количество запросов (\(1 \leq q \leq 200000\)). Следующие \(q\) строк содержат по четыре целых числа: \(x_{i1}\), \(y_{i1}\), \(x_{i2}\) и \(y_{i2}\) (\(1 \leq x_{i1} \leq x_{i2} \leq m\), \(1 \leq y_{i1} \leq y_{i2} \leq n\)).

Выходные данные

Выведите \(q\) чисел — для каждого запроса выведите минимальное значение в соответствующем прямоугольнике.

ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
64 megabytes
Ретроанализ. Игра на циклическом графе.

Полицейский гонится за преступником по музею. В начале погони каждый из них находится в одной из \(n\) комнат здания, некоторые комнаты соединены дверями.

Непосредственно перед началом погони в здании сработала сигнализация, и все двери закрылись. Музей использует сверхсовременную систему охраны - каждая дверь принадлежит одному из \(k\) контуров безопасности. Полицейский может с помощью специального пульта управления блокировать и разблокировать все двери некоторого контура. При этом с целью обеспечения безопасности операции он может одновременно разблокировать не более одного контура. Полицейский впервые попал на такое ответственное задание, поэтому очень волнуется. Чтобы случайно не провалить операцию, каждый раз, перейдя из одной комнаты в другую, он блокирует все двери. При этом он очень инициативен и каждую минуту переходит из комнаты в комнату.

Благодаря системе камер, установленной в музее, полицейский в любой момент знает, где находится преступник. Однако поскольку система видеонаблюдения находится в состоянии тестовой эксплуатации, данная информация доступна также во всех комнатах, поэтому преступник тоже знает, где находится полицейский. Преступник наблюдает за всеми перемещениями полицейского. Каждый раз, после того как полицейский переходит из одной комнаты в другую, перед тем, как полицейский заблокирует двери, преступник тоже может перебежать в одну из соседних комнат. Разумеется, он может пробегать только через двери контура, который в настоящее время разблокирован.

Преступник хочет добраться до выхода (который находится в комнате с номером 1), а полицейский - поймать преступника. Если полицейский врывается в комнату, где находится преступник, то преступник не успевает убежать в другую комнату, и полицейский арестовывает его. Если преступник оказывается в комнате с выходом, то он немедленно покидает здание и скрывается в близлежащих районах.

Полицейский хочет как можно быстрее поймать преступника или, если это невозможно, то как можно дольше задержать его внутри здания, чтобы дождаться помощи. Преступник же хочет либо как можно быстрее сбежать, либо как можно дольше бегать от полицейского (если первое невозможно).

Определите, сможет ли полицейский поймать преступника, и если да, то какое минимальное количество перемещений из комнаты в комнату ему для этого потребуется. Если полицейский не сможет поймать преступника, то определите, сможет ли тот убежать, и если да, то сколько переходов из комнаты в комнату ему для этого потребуется.

Входные данные

Первая строка входного файла содержит три числа: \(n\), \(m\) и \(k\) - количество комнат, дверей и контуров соответственно (\(4 \le n \le 300\), \(4 \le m \le 10\,000\), \(1 \le k \le 10\)). Следующие \(m\) строк содержат по три целых числа --- для каждой двери указаны номера комнат, которые она соединяет, и номер контура безопасности, к которому она принадлежит.

Последняя строка входного файла содержит два различных целых числа - номера комнат, в которых в начале погони находятся полицейский и преступник, соответственно.

Выходные данные

На первой строке выходного файла выведите "Caught", если полицейскому удастся поймать преступника, "Escaped", если преступнику удастся убежать, и "Endless", если ни один из этих случаев не имеет место.

Если полицейскому удастся поймать преступника, или преступнику удастся сбежать, то на второй строке выходного файла выведите число переходов полицейского из комнаты в комнату при оптимальных действиях обеих сторон.

Примеры
Входные данные
4 3 2
1 2 2
3 2 1
4 3 1
4 2
Выходные данные
Caught
2
Входные данные
5 5 5
1 2 3
2 3 2
2 4 2
4 5 2
3 5 2
5 2
Выходные данные
Endless

Страница: << 336 337 338 339 340 341 342 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест