首页 > 其他分享 >期中考试后总结-矩阵快速幂

期中考试后总结-矩阵快速幂

时间:2024-05-30 19:24:11浏览次数:21  
标签:总结 AC 期中考试 矩阵 自爆 快速 乘法

前言:总结了一下期中考试后OI和学习上的一些收获,以及需要接下来加强的地方

———————————————————————————————————————————————————————————————————————————————————————————————————————————

我们该航向怎样的未来 无数交织自传 相遇在汪洋中 当你抬头看 何时那万种渐层的斑斓 会默默绽放在 黑夜终端——五月天《少年他的奇幻漂流》

2024.05.28-2024.05.30 矩阵快速幂

1.基础知识:矩阵乘法

其中c[i][j]是A的第i行和B的第j列对应乘积的和

显然,矩阵乘法的复杂度是O(n^3)

矩阵快速幂

就是算A^n,方法很简单,把快速幂中的乘法改成矩阵的乘法就行了

T1序列的第k个数

等差数列用性质去套就行,用乘法,然后等比数列就是快速幂,然后因为学的是矩阵快速幂,所以用矩阵优化

T2斐波那契数列

板子题,自己找题解吧qwq

T3行为方案

应该可以构建按照题意建图,然后构造一个邻接矩阵,矩阵快速幂优化

我们设它的ac次方表示表示ac步后的方案数

那么在原地停留和自爆怎么处理?
在原地停留很简单,我们只要认为每个点都有一个从自己到自己的自环即可。

那自爆呢?
我们可以将自爆这个状态也看成一个城市,就设它为编号0。我们在邻接矩阵上从每个点都向0连一条边,0除了自己外不连其他出边。

这样就满足了任何一个点随时可以自爆,且无法恢复到其他状态。

最后统计答案就行

T4矩阵求和

构造一个包含A的转移矩阵AC,然后记得AC^(k+1)的右上角减去n*n

然而不会使用数学编译器qwq

T5最短路径

是DP,设f[i][j][k]表示从i走到j的k条路的最短路径长度之和,所以方程如下:

f[i][j][k]=min(f[i][t][k-1]+f[t][j][1])

因为在转移是k只与k-1有关,所以可以简化三维f[i][j]=min(f[i][t]+f[t][j])

这个就是矩阵快速幂,所以走n条路就等于把方程看为矩阵进行n次的矩阵乘幂,最后就是f[s][e]

然后,需要离散化!!这是伟大的AC_love告诉我的

我不知道怎么离散化

标签:总结,AC,期中考试,矩阵,自爆,快速,乘法
From: https://www.cnblogs.com/MerlinForLee/p/18223073

相关文章

  • 代码随想录算法训练营Day55 | 583. 两个字符串的删除操作、72. 编辑距离、编辑距离总
    本文目录583.两个字符串的删除操作做题看文章72.编辑距离做题看文章编辑距离总结篇以往忽略的知识点小结个人体会583.两个字符串的删除操作代码随想录:583.两个字符串的删除操作Leetcode:583.两个字符串的删除操作做题找出最长公共子序列,然后用两个字符串的......
  • 风控建模常用指标——WOE/IV/COR/VIF/PSI总结以及实现代码
    风控建模常用指标——WOE/IV/COR/VIF/PSI总结以及实现代码在金融领域,风险控制(风控)是维护金融稳定和安全的重要环节。随着大数据时代的到来,金融机构越来越依赖于数据驱动的风控模型来评估和量化风险。在构建这些模型时,一系列关键指标成为了衡量和解释模型性能的基石。其中,WO......
  • 矩阵 学习笔记
    引入矩阵的引入来自线性方程组,将其左边每一项的系数和右边的常数抽象出来就是矩阵。\[\left\{ \begin{array}{} x_1+2x_2=4\\ 2x_1+3x_2=5 \end{array}\right.\Leftrightarrow\left[ \begin{array}{} 1&2\\ 2&3 \end{array}\right]\left[ \b......
  • C#与C++类型对应关系总结
    另:在进行string转换时,需要加入前缀[MarshalAs(UnmanagedType.LPStr)]lpdword对应于refint C#调用DLL文件时参数对应表  C++中的DLL函数原型为extern"C"__declspec(dllexport)bool方法名一(constchar*变量名1,unsignedchar*变量名2)extern"C"__d......
  • ADS R知识总结
    Knitskillseval=falsehasnooutputshownhist(rnorm(10000),col='tomato')#evalecho=falsehasnocodeshownhist(rnorm(10000),col='tomato')#echoinclude=falsehasnooutputandcodeshownhist(rnorm(10000),col='tom......
  • 前端需要知道的缓存知识总结
    HTTP缓存是一种用于提高网站性能和减少带宽使用的技术。当用户访问一个网页时,浏览器会下载页面上的所有资源(如HTML、CSS、JavaScript等),这些资源会占用大量的带宽和时间。为了减少这些资源的加载时间,HTTP缓存机制被引入。......
  • 日常开发中注意点总结(三)对于分页查询、详情查询总到底哪些字段该回传回来,数据库的回传
    还有个问题,对于分页查询、详情查询这些接口中,到底是哪些字段应该回传给前台,其实还是依赖于前台需要对哪些字段做展示,需要使用哪些字段。一般对于resVo响应实体,都是包含哪些应该返回的字段(前端应该展示的字段),这种的再后面查询数据库的时候,直接查询该展示的字段,这是没有任何异......
  • 使用 Python 总结 excel 工作簿
    我有一个excel工作簿,其中有许多选项卡。每个选项卡都有合并单元格。这是我需要做的,也是我目前所掌握的:1-遍历工作表2-读取工作表数据3-取消合并单元格,将第一个值复制到下面未合并的空单元格中4-按列组合分组,并求和某些列的值5-输出最下面几行的值,这些值是上面几行值的......
  • 日常开发中注意点总结(一)
    对于更新的功能,在开发的时候,需要注意一些内容问题一:举例子:对于应付结算单修改页面中那些不支持修改的内容,我在前台通过点击按钮调用一次更新方法,不能被更新,即使在前台页面中是有限制不能修改,但是如果通过F12,是可以拿到请求url、请求参数的,如果此时如果通过F12,将url请求重发一下......
  • 学完《编辑器扩展精讲》总结
    学完《编辑器扩展精讲》总结思维导图思维导图pos下载结构POS文件下载代码仓库gitee......