eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Підпал

Підпал

Перед Вами сама звичайна павутина. Проте, як досвідчений олімпіадник, Ви помітили, що вона являє собою зв'язний граф з $n$ вершинами та $m$ ребрами. Якщо підпалити яку-небудь вершину, то вона загориться, через секунду загоряться усі суміжні з нею, потім загоряться усі суміжні з тими, що вже горять і т.д. Вам відомо, у каких вершинах підпалять павутину (в усіх одночасно). Потрібно знайти, скільки секунд пройде, доки загориться остання вершина і яка це буде вершина. \InputFile У першому рядку задано натуральні числа $n~(1 \le n \le 10^5)$ та $m~(n - 1 \le m \le 10^5)$. Далі йдуть $m$ рядків, у кожному по два числа --- номери вершин, які є кінцями ребра. Вершини нумеруються з $1$. У наступному рядку задано число $k~(1 \le k \le n)$ --- кількість точок підпалу. У наступному рядку містяться номери $k$ вершин, які підпалюються. \OutputFile У першому рядку виведіть час, коли загориться остання вершина. У другому рядку виведіть номер цієї вершини. Якщо таких декілька, виведіть ту, у якої номер мінімальний. \includegraphics{https://static.e-olymp.com/content/53/5349d47b2364fe1b6bb9ad31f0c4cf920310981d.gif}
Ліміт часу 2 секунди
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
6 6
1 2
2 6
1 5
5 6
3 5
4 5
2
1 2
Вихідні дані #1
2
3
Автор Андрій Селіванов
Джерело "П`ятірка за тиждень" 05 2013-2014. Пошук у ширину