当前位置: 首页 > wzjs >正文

做网站应该用什么语言来开发aso优化的主要内容为

做网站应该用什么语言来开发,aso优化的主要内容为,佛山网站建设外包公司,淘客做网站3337. 字符串转换后的长度 II # 定义了一个大质数 MOD,用于取模运算,防止数值溢出。 MOD 1_000_000_007# 矩阵乘法 mul def mul(a:List[List[int]], b:List[List[int]]) -> List[List[int]]:# 输入两个矩阵 a 和 b,返回它们的矩阵乘积 a…

3337. 字符串转换后的长度 II

# 定义了一个大质数 MOD,用于取模运算,防止数值溢出。
MOD = 1_000_000_007# 矩阵乘法 mul
def mul(a:List[List[int]], b:List[List[int]]) -> List[List[int]]:# 输入两个矩阵 a 和 b,返回它们的矩阵乘积 a @ b。# 使用列表推导式计算矩阵乘法的每个元素,并对结果取模。return [[sum(x * y for x, y in zip(row, col)) % MOD for col in zip(*b)]for row in a] # 矩阵快速幂 pow_mul
def pow_mul(a: List[List[int]], n: int, f0: List[List[int]]) -> List[List[int]]:res = f0while n:if n & 1:res = mul(a, res)a = mul(a, a)n >>= 1return resclass Solution:def lengthAfterTransformations(self, s: str, t: int, nums: List[int]) -> int:SIZE = 26f0 = [[1] for _ in range(SIZE)]m = [[0] * SIZE for _ in range(SIZE)]for i, c in enumerate(nums):for j in range(i + 1, i + c + 1):m[i][j % SIZE] = 1mt = pow_mul(m, t, f0)ans = 0for ch, cnt in Counter(s).items():ans += mt[ord(ch) - ord('a')][0] * cntreturn ans % MOD

[sum(x * y for x, y in zip(row, col)) % MOD for col in zip(*b)  解析

这段代码是一个列表推导式,用于计算两个矩阵(或二维数组)的乘积后对每个元素取模.

1. 外层结构:列表推导式

这是一个列表推导式,它会遍历 zip(*b) 的每一个元素(命名为 col),然后计算 sum(x * y for x, y in zip(row, col)) % MOD,最终将所有结果组成一个列表返回。

2. zip(*b):矩阵转置
  • b 是一个二维数组(矩阵),zip(*b) 是 Python 中矩阵转置的惯用写法。
  • b = [[1, 2, 3],[4, 5, 6]]
    zip(*b)  # 相当于 zip([1, 4], [2, 5], [3, 6])
    它会返回一个迭代器,每次迭代得到的是 b 的一列(即 [1, 4][2, 5][3, 6])。
3. sum(x * y for x, y in zip(row, col)):点积计算
  • row 是矩阵 a 的某一行,col 是矩阵 b 的某一列(因为 zip(*b) 是转置后的列)。
  • zip(row, col) 将 row 和 col 的对应元素配对,例如:
    row = [1, 2, 3]
    col = [4, 5, 6]
    zip(row, col)  # 生成 (1, 4), (2, 5), (3, 6)
  • x * y for x, y in zip(row, col) 计算每对元素的乘积(即 1 * 42 * 53 * 6)。
  • sum(...) 将这些乘积相加,得到点积(即 1 * 4 + 2 * 5 + 3 * 6 = 32)。
4. % MOD:取模运算
  • 对点积结果取模(% MOD),确保结果在 [0, MOD-1] 范围内。
5. 整体逻辑

这段代码的作用是:

  • 遍历矩阵 b 的每一列 col
  • 计算矩阵 a 的某一行 row 与 col 的点积。
  • 对点积结果取模 MOD
  • 将所有结果组成列表返回。
row = [1, 2, 3]
b = [[4, 5, 6],[7, 8, 9]]
MOD = 10

计算过程:

  1. zip(*b) 得到 [4, 7][5, 8][6, 9](即 b 的列)。
  2. 对每一列 col
    • col = [4, 7]sum(1 * 4 + 2 * 7) = 1818 % 10 = 8
    • col = [5, 8]sum(1 * 5 + 2 * 8) = 2121 % 10 = 1
    • col = [6, 9]sum(1 * 6 + 2 * 9) = 2424 % 10 = 4
  3. 最终结果:[8, 1, 4]

这段代码实现了:

  1. 矩阵 a 的一行 row 与矩阵 b 的每一列的点积。
  2. 对每个点积结果取模 MOD
  3. 返回结果列表。

常用于矩阵乘法或线性代数运算中。

http://www.dtcms.com/wzjs/139182.html

相关文章:

  • 网站前面的小图标怎么做百度提交网址入口
  • 网站建设与维护济南做网站公司
  • 河东做网站的公司百度售后电话人工服务
  • java一般用来做网站后台吗如何提高自己在百度的排名
  • 企业官方网站建设文案写作软件app
  • 专门做衣服的网站有哪些金蝶进销存免费版
  • 企业建站系统java短视频营销的特点
  • 如何推进政府网站建设方案汕头seo网站建设
  • vue企业门户网站模板会计培训机构排名前十
  • 开源门户网站苏州seo建站
  • 成都网站建设公司有哪些网址大全是ie浏览器吗
  • oppo网站建设网络营销网
  • 铜陵高端网站建设百度搜索指数排名
  • 在游戏网站做中介合法百度资源分享网
  • 开发公司名字起名大全抖音seo优化软件
  • 临海网站制作安徽网站推广
  • 网站营销是什么意思免费正规的接单平台
  • 网站建设意见建议网站建设方案设计书
  • 网站建设推广浩森宇特优化网站排名软件
  • 立方米网站建设厦门seo排名扣费
  • 微信开放平台 网站开发百度竞价调价软件
  • 免费发布企业信息平台长沙seo步骤
  • 做网站要法人身份证吗哪些网站可以seo
  • 建博会广州网站什么是网站外链
  • 网站建设市区企业网站建设案例
  • 网站怎么找回密码世界搜索引擎大全
  • 找做网站的上什么app外链提交
  • 市网站建设优化工具箱
  • 科技网站模板无锡百度正规推广
  • 什么网站建设推广营销企业