10880. Кіоски з морозивом


Відправити розв'язок

Бали: 100
Time limit: 2.0s
Memory limit: 500M

Authors:
Problem type
Allowed languages
C++, Java, Pascal, Python

У маленькому провінційному містечку є маленька школа, де навчаються не зовсім великі діти. Після занять вони біжать на автобусну зупинку, звідки автобус розвозить їх додому.

Дорогою від школи до зупинки є \(N\) перехресть, сполучених вулицями. Школярі з вулиці на вулицю переходять лише на перехрестях.

Усі школярі, як відомо, люблять морозиво. Відома компанія Cold-N-Icy, яка виробляє морозиво, вирішила скористатися цим. Вона хоче розмістити кіоски з морозивом на деяких перехрестях таким чином, щоб будь-який шлях школяра від школи до зупинки проходив хоч через одне перехрестя, на якому встановлено кіоск.

Так як установка та утримання кіоску - дорога справа, то компанія вирішила залучити Вас для того, щоб визначити мінімальну кількість кіосків, яку необхідно встановити.

Допоможіть компанії Cold-N-Icy знайти цю мінімальну кількість.

Формат вхідних даних

У першому рядку знаходиться число перехресть \(N\) (\(1 ≤ N ≤ 100\)).

У кожному з наступних \(N\) рядків знаходиться інформація про перехрестя, з'єднані вулицями між собою. Перехрестя нумеруються, починаючи з одиниці. На початку \(i\)-го рядка знаходиться число \(K_i\) - кількість місць (перехресть, школи або зупинки), з'єднаних вулицями з \(i\)-тим перехрестям. Далі йде \(K_i\) місць, розділених пробілами. Для позначення перехресть використовують їх номери, школа позначається як school, зупинка позначається як station. Якщо перехрестя \(i\) знаходиться у списку перехрестя \(j\), то зворотне також правильне.

Гарантується, що від школи до зупинки завжди є шлях.

Формат вихідних даних

Виведіть одне число - мінімальну кількість кіосків, які планується встановити.

Приклад вхідних даних

2
2 school station
2 station school

Приклад вихідних даних

2

Коментарі

Ще немає коментарів.