Олимпиадный тренинг

Задача . A Graph Problem


Задача

Темы:
п»ї

Беси столкнулась со сложной задачей на графы - помогите ей.

Вам дан связный, ненаправленный граф с вершинами, помеченными \(1\dots N\) и рёбрами помеченными \(1\dots M\) (\(2\le N\le 2\cdot 10^5\), \(N-1\le M\le 4\cdot 10^5\)). Для каждой вершины \(v\) в этом графе выполняется следующий процесс:

  1. Пусть \(S=\{v\}\) и \(h=0\).
  2. While \(|S|<N\),
    1. �з всех ребер, которые имеют \(S\) как конечную точку, пусть \(e\) - ребро с минимальной меткой
    2. Добавляем в \(S\) конечную точку ребра \(e\), которая не содержится в \(S\).
    3. Устанавливаем \(h=10h+e\).
  3. Возвращаем \(h\pmod{10^9+7}\).
Определите все возвращаемые величины в этом процессе.

ФОРМАТ ВЫВОДА (на экран):

Первая строка содержит \(N\) и \(M\). Затем следуют \(M\) строк, \(e\)-ая строка содержит конечные точки \((a_e,b_e)\) \(e\)-го ребра (\(1\le a_e<b_e\le N\)). Гарантируется, что эти ребра формируют связный граф, и что не более одного ребра соединяет каждую пару вершин.

ФОРМАТ ВЫВОДА (на экран):

Выведите \(N\) строк, где \(i\)-ая строка должна содержать возвращаемую величину процесса, который начался в вершине \(i\).

ПР�МЕР ВВОДА:

3 2
1 2
2 3

ПР�МЕР ВЫВОДА:

12
12
21

ПР�МЕР ВВОДА:

5 6
1 2
3 4
2 4
2 3
2 5
1 5

ПР�МЕР ВЫВОДА:

1325
1325
2315
2315
5132

Рассмотрим старт в вершине \(i=3\). Сначала мы выберем ребро \(2\), после чего \(S = \{3, 4\}\) и \(h = 2\). Далее мы выберем ребро \(3\), после чего \(S = \{2, 3, 4\}\) и \(h = 23\). Затем мы выберем ребро \(1\), после чего \(S = \{1, 2, 3, 4\}\) и \(h = 231\). Наконец мы выберем ребро \(5\), после чего \(S = \{1, 2, 3, 4, 5\}\) и \(h = 2315\). Поэтому ответ для \(i=3\) есть \(2315\).

ПР�МЕР ВВОДА:

15 14
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
10 11
11 12
12 13
13 14
14 15

ПР�МЕР ВЫВОДА:

678925929
678925929
678862929
678787329
678709839
678632097
178554320
218476543
321398766
431520989
542453212
653475435
764507558
875540761
986574081

Ответ выводите по модулю \(10^9+7\).

ОЦЕН�ВАН�Е:

  • Тест 4: \(N,M\le 2000\)
  • Тесты 5-6: \(N\le 2000\)
  • Тесты 7-10: \(N\le 10000\)
  • Тесты 11-14: \(a_e+1=b_e\) для всех \(e\)
  • Тесты 15-23: Нет дополнительных ограничений.

Problem credits: Benjamin Qi

Примеры
Входные данныеВыходные данные
1 3 2
1 2
2 3
12
12
21

time 500 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя