归舟


私信TA

用户名:guizhou

访问量:5164

签 名:

等  级
排  名 624
经  验 3989
参赛次数 0
文章发表 22
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

解题思路:

注意事项:

参考代码:

def su(j):
        l1=[]
        l2=[]
        for k in j:
                if k.isdigit():
                        l1.append(k)
        for x in range(int(l1[0])-1,int(l1[2])):
                for y in range(int(l1[1])-1,int(l1[3])):
                        if not str(l[x][y]).isdigit():
                                if 'SUM' in l[x][y]:
                                        l[x][y]=su(l[x][y])
                                        
                                elif 'AVG' in l[x][y]:
                                        l[x][y]=av(l[x][y])
                                        
                                elif 'STD' in l[x][y]:
                                        l[x][y]=st(l[x][y])
                        
                        l2.append(int(l[x][y]))
                        
        return sum(l2)
def av(j):
        l1=[]
        l2=[]
        for k in j:
                if k.isdigit():
                        l1.append(k)
        for x in range(int(l1[0])-1,int(l1[2])):
                for y in range(int(l1[1])-1,int(l1[3])):
                        if not str(l[x][y]).isdigit():
                                if 'SUM' in l[x][y]:
                                        l[x][y]=su(l[x][y])
                                        
                                elif 'AVG' in l[x][y]:
                                        l[x][y]=av(l[x][y])
                                        
                                elif 'STD' in l[x][y]:
                                        l[x][y]=st(l[x][y])
                        
                        l2.append(int(l[x][y]))
        return sum(l2)/len(l2)
def st(j):
        l1=[]
        l2=[]
        l3=[]
        for k in j:
                if k.isdigit():
                        l1.append(k)
        for x in range(int(l1[0])-1,int(l1[2])):
                for y in range(int(l1[1])-1,int(l1[3])):
                        if not str(l[x][y]).isdigit():
                                if 'SUM' in l[x][y]:
                                        l[x][y]=su(l[x][y])
                                        
                                elif 'AVG' in l[x][y]:
                                        l[x][y]=av(l[x][y])
                                        
                                elif 'STD' in l[x][y]:
                                        l[x][y]=st(l[x][y])
                        l2.append(int(l[x][y]))
        a=sum(l2)/len(l2)
        for b in l2:
                l3.append((b-a)**2)
        return (sum(l3)/len(l3))**0.5
                
n,m=map(int,input().split())
l=[list(input().strip().split()) for i in range(n)]
for i in l:
        for j in i:
                if not str(j).isdigit():                       
                        if 'SUM' in j:
                                j=su(j)
                                print(f"{float(j):.2f}",end=' ')
                                
                        elif 'AVG' in j:
                                j=av(j)
                                print(f"{float(j):.2f}",end=' ')
                                
                                
                        elif 'STD' in j:
                                j=st(j)
                                print(f"{float(j):.2f}",end=' ')
                else:
                        print(f"{float(j):.2f}",end=' ')
        print()


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区