大佬帮帮忙,我实在优化不了,Py代码简洁好读。
查看原帖
大佬帮帮忙,我实在优化不了,Py代码简洁好读。
707862
s_a_b_e_ryyds楼主2022/5/11 11:59
n=int(input().strip())
ls,di=[],{}
for i in range(n):
    m=int(input().strip())
    if m not in di:
        di[m]=1
        ls.append(m)
    else:
        di[m]+=1
ls.sort()
m=len(ls)
cnt=0
for i in range(m):
    if di[ls[i]]>=2:
        a=ls[i]
        A=di[a]
        sl=[]
        for j in range(i):
            b=ls[j]
            B=di[b]
            c=a-b
            if c==b:
                cnt+=A*(A-1)*B*(B-1)//4
            else:
                if c in ls and c not in sl:
                    sl.append(b)
                    cnt+=A*(A-1)*B*di[c]//2
print(cnt%(pow(10,9)+7))
2022/5/11 11:59
加载中...