SAFENET2 - Mạng máy tính an toàn

Tags: tarjan, dfs, graph, data-structure

Problem

https://vn.spoj.com/problems/SAFENET2

https://oj.vnoi.info/problem/SAFENET2

n máy tính đánh số từ 1 đến nm dây cáp mạng,giữa 2 máy tính có thể có một hoặc nhiều đường dây cáp mạng nối chúng, không có cáp mạng nối một máy với chính nó. Hai máy tính có thể truyền dữ liệu cho nhau nếu có đường cáp nối trực tiếp giữa chúng hoặc truyền qua một số máy trung gian.

Một tập S các máy tính được gọi là hệ thống an toàn nếu dù một máy tính bất kỳ bị tấn công (do sự tò mò của người dân :-(, cứ thích truy cập và hack những trang cấm :-( ) thì trong số những máy tính còn lại, những máy tính thuộc tập S vẫn có thể truyền được dữ liệu cho nhau.

Xác định số lượng lớn nhất có thể các máy tính của tập S

Input

  • Dòng 1 chứa 2 số nguyên n, m (1 <= n <= 30,000, 0 <= m <= 100,000)
  • m dòng tiếp theo ghi thông tin về các dây cáp mạng, gồm 2 chỉ số của 2 máy được dây đó nối trực tiếp.

Output

Ghi một số nguyên duy nhất là số lượng máy tính lớn nhất tìm đc

Example

Input  
8 10  
1 2  
2 3  
3 1  
1 4  
4 5  
5 1  
1 6  
6 7  
7 8  
8 1  

Output  
4

Tutorial


Submission

SAFENET2.cpp