Tập phủ cạnh nhỏ nhất

Xem dưới dạng PDF

Gửi bài giải


Điểm: 20
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
đầu vào: stdin
Đầu ra: stdout

Tác giả:
Kiểu bài tập

Cho một đồ thị hai phía gồm \(N\) đỉnh ở tập trái và \(M\) đỉnh ở tập phải, cùng \(K\) cạnh nối giữa chúng. Một tập đỉnh được gọi là phủ cạnh (vertex cover) nếu mỗi cạnh của đồ thị đều có ít nhất một đầu mút thuộc tập đó. Hãy tìm kích thước nhỏ nhất của một tập phủ cạnh.

Định dạng đầu vào

  • Dòng đầu chứa ba số nguyên \(N, M, K\) (\(1 \le N, M \le 2000\), \(0 \le K \le 50000\)).
  • \(K\) dòng tiếp theo, mỗi dòng chứa hai số nguyên \(u, v\) (\(1 \le u \le N, 1 \le v \le M\)) mô tả cạnh nối đỉnh \(u\) (trái) với đỉnh \(v\) (phải).

Định dạng đầu ra

  • Một số nguyên duy nhất là kích thước tập phủ cạnh nhỏ nhất.

Ràng buộc

Subtask Điểm Ràng buộc
1 \(2\) \(N, M \le 10\)
2 \(2\) \(N, M \le 50\)
3 \(3\) \(N, M \le 200\)
4 \(3\) \(N, M \le 500\)
5 \(4\) \(N, M \le 1000\)
6 \(6\) \(N, M \le 2000\)

Ví dụ

Input:

3 3 5
1 1
1 2
2 2
2 3
3 3

Output:

2

Nhận xét

Không có ý kiến tại thời điểm này.