图的字典表示 python

2023-07-30 14:17:52 浏览数 (1)

题目描述

图的字典表示。输入多行字符串,每行表示一个顶点和该顶点相连的边及长度,输出顶点数,边数,边的总长度。比如上图0点表示:

{'O':{'A':2,'B':5,'C':4}}。用eval函数处理输入。

输入

第一行表示输入的行数 下面每行输入表示一个顶点和该顶点相连的边及长度的字符串。假设输入均为有向图。

输出

在一行中输出顶点数,边数,边的总长度

输入样例1 

4 {'a':{'b':10,'c':6}} {'b':{'c':2,'d':7}} {'c':{'d':10}} {'d':{}} 

输出样例1

4 5 35

AC代码

代码语言:javascript复制
dictionary = {}
t = int(input())
while t > 0:
    t = t - 1
    dictionary.update(eval(input()))
edgeNumber = 0
edgeLength = 0
vertexNumber = len(dictionary)
for vertex in dictionary:
    edgeNumber  = len(dictionary[vertex])
    for value in dictionary[vertex].values():
        edgeLength  = value
print(vertexNumber, edgeNumber, edgeLength)

0 人点赞