---> 1657 задач <---
Источники
    Личные олимпиады(938 задач)
    Командные олимпиады(684 задач)
Страница: << 230 231 232 233 234 235 236 >> Отображать по:
ограничение по времени на тест
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
ограничение по времени на тест
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
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
64 megabytes

Обратные задачи представляют собой быстро развивающуюся область информатики. В отличии от классической постановки задачи, где по заданным исходным данным \(D\) требуется решить некоторую оптимизационную задачу \(P\), в обратной задаче по заданной задаче \(P\) и результату вычисления \(R\) требуется подобрать исходные данные \(D\), на которых достигается этот результат. В этой задаче вам предлагается решить обратную задачу к задаче о минимуме на отрезке (range minimum query, RMQ).
Пусть задан массив \(a[1..n]\). Ответ на запрос о минимуме на отрезке \(Q(i, j)\) — это минимальное среди значений \(a[i]\), ..., \(a[j]\). Вам дано \(n\) и последовательность запросов о минимуме на отрезке с ответами. Восстановите исходный массив \(a\).

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

Первая строка входного файла содержит \(n\) — размер массива, и \(m\) — количество запросов (\(1 \leq n, m \leq 100000\)). Следующие \(m\) строк содержат по три целых числа: числа \(i\), \(j\) и \(q\) означают, что \(Q(i, j) = q\) (\(1 \leq i \leq j \leq n\), \(-2^{31} \leq q \leq 2^{31} - 1\)).

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

Если входные данные несовместны, то есть искомого массива a не существует, выведите "inconsistent" на первой строке выходного файла.
В противном случае выведите “consistent” на первой строке выходного файла. Вторая строка должна содержать сам массив. Элементы массива должны быть целыми числами между \(2^{31}\) и \(2^{31}-1\). Если решений несколько, выведите любое.

Примечание

Баллы за эту задачу будут начислены только если решение проходит все тесты

Примеры
Входные данные
3 2
1 2 1
2 3 2
Выходные данные
consistent
1 2 2 
Входные данные
3 3
1 2 1
1 1 2
2 3 2
Выходные данные
inconsistent

Страница: << 230 231 232 233 234 235 236 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест