Задачі
Покриття шляхами
Покриття шляхами
Задано орієнтовний ациклічний граф.
Потрібно визначити мінімальну кількість шляхів, які не перетинаються, що покривають усі вершини.
\InputFile
Перший рядок вхідного файлу містить \textbf{n} та \textbf{m} - кількість вершин та ребер графа відповідно (\textbf{2} ≤ \textbf{n} ≤ \textbf{1000}, \textbf{0} ≤ \textbf{m} ≤ \textbf{10^5}). У наступних \textbf{m} рядках містяться по два числа: номери вершин \textbf{u} та \textbf{v}, які з'єднує ребро (\textbf{u}, \textbf{v}).
\OutputFile
У першому рядку вихідного файлу виведіть натуральне число \textbf{k} - мінімальну кількість шляхів, необхідних, щоб покрити усі вершини.
Вхідні дані #1
3 3 1 3 3 2 1 2
Вихідні дані #1
1