BIỂU DIỄN ĐỒ THỊ

Có hai cách tiêu chuẩn để biểu diễn một đồ thị, trong đó ~ G =(V,E) ~ là tập hợp các đỉnh ~ V ~ và ~ E ~ là tập hợp các cạnh; biểu diễn danh sách kề và biểu diễn ma trận kề.

Biểu diễn danh sách kề bao gồm một mảng ~ Adj[|V|] ~ các danh sách, mỗi danh sách cho mỗi đỉnh trong ~ |V| ~. Đối với mỗi ~ u ~, danh sách kề ~ Adj[u] ~ chứa tất cả các đỉnh ~ v ~ sao cho có một cạnh ~ (u,v)∈ E ~. Đó là, ~ Adj[u] ~ bao gồm tất cả các đỉnh kề với ~ u ~ trong ~ G ~.

Biểu diễn ma trận kề bao gồm ma trận ~ |V|×|V| ~ sao cho ~ ai,j=1 ~ nếu ~ (i, j)∈ E ~, ~ a_{i,j} =0 ~ nếu không.

Viết một chương trình đọc một đồ thị có hướng ~ G ~ được biểu diễn bởi danh sách kề, và in ra biểu diễn ma trận kề của nó. ~ G ~ bao gồm ~ n (=|V|) ~ đỉnh được xác định bằng chỉ số ~ 1,2,...,n ~ tương ứng.

Dữ liệu vào:

  • Dòng 1: chứa một số nguyên ~ n ~;
  • Tiếp theo là ~ n ~ dòng, dòng thứ ~ i ~ mô tả một danh sách các đỉnh kề với đỉnh ~ i ~ có dạng: ~ u~ ~k~ ~v_1~ ~v_2~ ~...~ ~v_k ~ biểu thị danh sách gồm k đỉnh kề của đỉnh có chỉ số là ~ u ~.

Kết quả:

  • Ghi ra biểu diễn ma trận kề của đồ thị đã cho.

Ví dụ:

input:

4
1 2 2 4
2 1 4
3 0
4 1 3 
output:
0 1 0 1
0 0 0 1
0 0 0 0
0 0 1 0 

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. topteo1243 (18/22)
  2. cao_thanh_dat (6/11)
  3. nsduc83 (5/23)
Trong 7 ngày
  1. caubeioi (39/63)
  2. nhatanh (33/47)
  3. dat092010 (24/35)
Trong 30 ngày
  1. caubeioi (179/327)
  2. phamnhi (153/428)
  3. bestsoilvam (151/248)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38226

Lưu Hải Phong - 2020
[email protected]