# Bài tập 11. MTK: liệt kê đỉnh kề
## Câu 1
Viết chương trình bằng ngôn ngữ C cho phép người dùng nhập dữ liệu của một **đồ thị vô hướng (có thể chứa đa cung và chứa khuyên)** và in các đỉnh kề của các đỉnh ra màn hình.

Biểu diễn đồ thị bằng phương pháp "**Ma trận kề**".

Đầu vào
- Dữ liệu đầu vào được đọc từ dòng nhập chuẩn (stdin, bàn phím) theo định dạng:
  - Dòng đầu tiên chứa 2 số nguyên n và m cách nhau một khoảng trắng, n: số đỉnh, m: số cung
  - m dòng tiếp theo, mỗi dòng chứa 2 số nguyên u v cách nhau 1 khoảng trắng mô tả cung (u, v).

Đầu ra
- In ra n dòng, dòng thứ i in các đỉnh kề của đỉnh i, cách nhau 1 khoảng trắng, theo thứ tự tăng dần (không lặp lại), ví dụ: neighbours(2) = 1 2 4

Chú ý
- Giả sử dữ liệu đầu vào luôn hợp lệ, không cần phải kiểm tra
- Nộp toàn bộ chương trình

## Câu 2
Viết chương trình bằng ngôn ngữ C cho phép người dùng nhập dữ liệu của một **đồ thị có hướng (có thể chứa đa cung và khuyên)** và in các đỉnh kề của các đỉnh ra màn hình.

Biểu diễn đồ thị bằng phương pháp "**Ma trận kề**".

Đầu vào
- Dữ liệu đầu vào được đọc từ dòng nhập chuẩn (stdin, bàn phím) theo định dạng:
  - Dòng đầu tiên chứa 2 số nguyên n và m cách nhau một khoảng trắng, n: số đỉnh, m: số cung
  - m dòng tiếp theo, mỗi dòng chứa 2 số nguyên u v cách nhau 1 khoảng trắng mô tả cung (u, v).

Đầu ra
- In ra n dòng, dòng thứ i in các đỉnh kề của đỉnh i, cách nhau 1 khoảng trắng, theo thứ tự tăng dần (không lặp lại), ví dụ: neighbours(2) = 1 2 4

Chú ý
- Giả sử dữ liệu đầu vào luôn hợp lệ, không cần phải kiểm tra
- Nộp toàn bộ chương trình
