题解 | #实现Masked Multi-Head Self-Attention#

注意力调度问题

http://www.nowcoder.com/questionTerminal/ac0ce181f5474367a08dc85d1341dc80

import math

n, d = map(int, input().split())

x = []

for _ in range(n):
    x.append(list(map(float, input().split())))

c = list(map(int, input().split()))

for ii in range(n):
    l = 0.0
    for jj in range(d):
        l += x[ii][jj] * x[ii][jj]
    l /= d
    low = math.sqrt(l)
    for jj in range(d):
        x[ii][jj] /= low

S = 0

def dot_mul(x1, x2):
    s = 0
    for iii in range(d):
        s += x1[iii] * x2[iii]
    return s


for jj in range(n):
    Aj = []
    for ii in range(jj):
        Aij = dot_mul(x[ii], x[jj]) / math.sqrt(d)
        Aj.append(Aij * Aij)
    Aj.sort(reverse=True)
    for ii in range(jj):
        S += Aj[ii]
        if ii == c[jj] - 1:
            break

print(round(100 * S))

全部评论

相关推荐

牛至超人:把哈工大,再加大加粗,看见闪闪发光的哈工大字样,面试官直接流口水
投递字节跳动等公司9个岗位
点赞 评论 收藏
分享
11-13 20:16
已编辑
厦门理工学院 软件测试
专业嗎喽:硕佬,把学校背景放后面几段,学校背景双非还学院,让人看了就不想往下看。 把实习经历和个人奖项放前面,用数字化简述自己实习的成果和掌握的技能,比如负责项目一次通过率90%,曾4次发现项目潜在问题风险为公司减少损失等等
点赞 评论 收藏
分享
12-19 22:04
武汉大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务