【PTA】【浙大版《Python 程序设计》题目集】第6章-5 列表元素个数的加权和(1) (40 分)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_43733499/article/details/102722490

列表元素个数的加权和(1)

输入一个嵌套列表,嵌套层次不限,根据层次,求列表元素的加权个数和。第一层每个元素算一个元素,第二层每个元素算2个元素,第三层每个元素算3个元素,第四层每个元素算4个元素,…,以此类推!

输入格式:

在一行中输入一个列表。

输出格式:

在一行中输出加权元素个数值。

输入样例:

在这里给出一组输入。例如:

[1,2,[3,4,[5,6],7],8]

输出样例:

在这里给出相应的输出。例如:

15

思路:

用num记录所在层数,碰到数字并且之后的一位不是数字,sum+num。

代码如下:

a = input()
b = ''.join(a)
num= 0
sum=0
for i in range(0,len(b)):
    if(b[i]=='['):
        num+=1
    elif(b[i]==']'):
        num-=1
    if b[i].isdigit() and (i!='[') and (i!=']') and b[i]!=',' and b[i+1].isdigit()==False:
        sum = sum+num
print(sum)`

猜你喜欢

转载自blog.csdn.net/qq_43733499/article/details/102722490