关注
# coding = utf-8 def mul(m1, m2): h1, w1 = len(m1), len(m1[0]) h2, w2 = len(m2), len(m2[0]) result = [[0]*w2 for _ in range(h1)] for i in range(h1): for j in range(w2): result[i][j] = sum([m1[i][k]*[v[j] for v in m2][k] for k in range(w1)]) return result def quick(m, n): result = m n -= 1 while n: if n&1: result = mul(result, m) m = mul(m, m) n >>= 1 return result def f(w): memo = [0] * w memo[0] = 1 memo[1] = 2 memo[2] = 4 for i in range(3, w): memo[i] = memo[i-1]+memo[i-2]+memo[i-3] return memo[-1] param = [[1,1,1], [1,0,0], [0,1,0]] # 初始化 w, h = 10, 4 r = quick(param, w-3) r = mul(r, [[4], [2], [1]])[0][0] print(r) # 矩阵快速幂方法 # print(f(10)) # 动态规划 total_number = r**h
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 我的实习收获 #
24877次浏览 431人参与
# 在国企工作的人,躺平了吗? #
333237次浏览 3862人参与
# 实习吐槽大会 #
26543次浏览 129人参与
# 商战,最累的是我们 #
12736次浏览 50人参与
# 晒一晒你的工位 #
84269次浏览 299人参与
# 我的租房踩坑经历 #
20593次浏览 237人参与
# 穿越回高考你还会选现在的专业吗 #
18311次浏览 235人参与
# 毕业旅行去哪玩儿 #
1003次浏览 29人参与
# 小厂实习有必要去吗 #
46383次浏览 267人参与
# 求职你最看重什么? #
69547次浏览 393人参与
# 牛友们,签完三方你在忙什么? #
94896次浏览 837人参与
# 夸夸我的求职搭子 #
190782次浏览 1890人参与
# 摸鱼打卡站 #
39307次浏览 687人参与
# 携程求职进展汇总 #
530219次浏览 3949人参与
# 产运销实习日记 #
51963次浏览 551人参与
# 打工人锐评公司红黑榜 #
145356次浏览 908人参与
# 网易求职进展汇总 #
101828次浏览 982人参与
# 你小时候最想从事什么职业 #
95477次浏览 1719人参与
# 作业帮求职进展汇总 #
52425次浏览 354人参与
# 高学历就一定能找到好工作吗? #
47545次浏览 589人参与