图的存储:多父节点情况
查看原帖
图的存储:多父节点情况
723069
Ohmic_Messiah楼主2024/4/27 21:53

参考代码:

from collections import defaultdict
a,b=map(int,input().split())
lianjie=defaultdict(int)
cunchu=[]
# index1=[]
for i in range(b):
    c,d=map(int,input().split())
    lianjie[c]=[]
    cunchu.append([c,d])
    # index1.append(c)
for j in cunchu:
    lianjie[j[0]].append(j[1])
juzhen=[[0]*(a) for _ in range(a)]
for i,j in lianjie.items():
    for k in j:
        juzhen[i-1][k-1]=1
        juzhen[k-1][i-1]=1
for i in juzhen:
    for j in i:
        print(j,end=" ")
    print()
# index1.sort()
# print(index1)
for i in range(len(juzhen)):
    print(sum(juzhen[i]),end=" ")
    for j in range(len(juzhen[i])):
        if juzhen[i][j]:
            print(j+1,sep=" ",end=" ")
    print()
2024/4/27 21:53
加载中...