Bộ ghép cơ bản

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 bộ ghép (matching) là một tập hợp các cạnh không có đỉnh chung. Hãy tìm kích thước bộ ghép lớn nhất.

Đị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ả một cạnh nối đỉnh \(u\) (bên trái) với đỉnh \(v\) (bên phải).

Định dạng đầu ra

  • Một số nguyên duy nhất là kích thước bộ ghép lớn 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:

3

Nhận xét

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