![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
矩阵快速幂
文章平均质量分 51
tomjobs
别慌,慌也没用
展开
-
AcWing 225. 矩阵幂求和(递归)
思路:用朴素的递归就可以解决。如果kkk是偶数,那么f(A,k)=A1+A2+A3+...+Ak=A1+A2+...+Ak2+Ak2(A1+A2+A3...+Ak2)f(A,k)=A^1+A^2+A^3+...+A^k=A^1+A^2+...+A^{\frac{k}{2}}+A^{\frac{k}{2}}(A^1+A^2+A^3...+A^{\frac{k}{2}})f(A,k)=A1+A2+A3+...+Ak=A1+A2+...+A2k+A2k(A1+A2+A3...+A2k)=>=.原创 2021-01-19 21:55:03 · 316 阅读 · 0 评论 -
P4159 [SCOI2009] 迷路(矩阵快速幂,两点路径为k的方案数)
思路:具体参考https://www.luogu.com.cn/blog/qq-2056188203/mi-lu-scoi2009-ti-xie简而言之,就是如果权值为1,要求两点之间经过kkk条边的路径方案数,只要将邻接矩阵进行kkk次方就好了。本题权重为1~9,我们将每个点拆成10个点,两个点边权就通过拆成的点建边来表示,这样就成了权值为1的邻接矩阵形式了。#include <cstdio>#include <cstring>#include <algorit.原创 2021-01-19 19:33:16 · 264 阅读 · 0 评论 -
牛客IOI周赛18-提高组 B.拆分(矩阵快速幂优化DP)
题目描述牛牛准备送给牛妹一条项链,但是项链太长了,于是他准备将项链拆掉。牛妹有一些不喜欢的数,所以拆分出来的长度中一定要有至少一个不是牛妹不喜欢的(不然就送不出去了)。注意,由于项链上的每一颗珠子都不同,所以1 5 1和1 1 5是两种不同的拆分方案,不拆也是一种方案。输入描述:第一行:两个数N和P。第二行:一个数K,表示牛妹有K个不喜欢的数。第三行:K个牛妹不喜欢的数T。输出描述:一个整数表示拆分方案对P取模后的值,不保证P是质数。示例1输入复制5 1000722 3输出原创 2020-09-18 17:57:44 · 157 阅读 · 0 评论 -
DNA Sequence POJ - 2778(AC自动机+矩阵快速幂)
It’s well known that DNA Sequence is a sequence only contains A, C, T and G, and it’s very useful to analyze a segment of DNA Sequence,For example, if a animal’s DNA sequence contains segment ATC then it may mean that the animal may have a genetic disease.原创 2020-06-21 18:40:16 · 658 阅读 · 5 评论 -
AcWing 345. 牛站(floyd+矩阵递推)
给定一张由T条边构成的无向图,点的编号为1~1000之间的整数。求从起点S到终点E恰好经过N条边(可以重复经过)的最短路。注意: 数据保证一定有解。输入格式第1行:包含四个整数N,T,S,E。第2…T+1行:每行包含三个整数,描述一条边的边长以及构成边的两个点的编号。输出格式输出一个整数,表示最短路的长度。数据范围2≤T≤100,2≤N≤106输入样例:2 6 6 411...原创 2020-03-27 14:53:14 · 261 阅读 · 0 评论 -
AcWing 206. 石头游戏(矩阵快速幂 关于矩阵的一些理解)
石头游戏在一个 n 行 m 列 (1≤n,m≤8) 的网格上进行,每个格子对应一种操作序列,操作序列至多有10种,分别用0~9这10个数字指明。操作序列是一个长度不超过6且循环执行、每秒执行一个字符的字符串。每秒钟,所有格子同时执行各自操作序列里的下一个字符。序列中的每个字符是以下格式之一:1、数字09:表示拿09个石头到该格子。2、NWSE:表示把这个格子内所有的石头推到相邻的格子,N...原创 2020-03-07 20:41:58 · 424 阅读 · 0 评论 -
ACWING205. 斐波那契(矩阵快速幂)
在斐波那契数列中,Fib0=0,Fib1=1,Fibn=Fibn−1+Fibn−2(n>1)。给定整数n,求Fibnmod10000。输入格式输入包含多组测试用例。每个测试用例占一行,包含一个整数n。当输入用例n=-1时,表示输入终止,且该用例无需处理。输出格式每个测试用例输出一个整数表示结果。每个结果占一行。数据范围0≤n≤2∗109输入样例:099999999...原创 2020-02-18 20:40:30 · 195 阅读 · 0 评论