快速幂-矩阵快速幂、普通快速幂、广义快速幂
Nemaleswang
ACM退役狗一只
展开
-
hdoj 6030 Happy Necklace
题目链接:Happy Necklace题目大意:给你一个长度为n的字符串,只包含0和1,要求这个字符串的所有素数长度的子序列都得是1的个数比0的个数多,问长度为n的这样字符串有多少个题目思路:先xjb推公式,公式推出来是f(n) = f(n-1)+f(n-3),然后做矩阵快速幂就好。 原矩阵: ⎧⎩⎨⎪⎪600400300⎫⎭⎬⎪⎪\begin{Bmatrix} 6 & 4 & 3 \\ 0 &原创 2017-05-15 21:16:46 · 370 阅读 · 0 评论 -
hdoj 6050(2017 Multi-University Training Contest - Team 2) Funny Function
题目链接:Funny Function题目大意:给定一个公式,算某项题目思路:暴力打表,然后找规律 然后直接快速幂套板子就好了,记得算逆元(不过这规律一点也不好找。。。。) #include <map> #include <cmath> #include <queue> #include <stack> #include <vector> #include <cstdio> #include原创 2017-08-29 20:27:00 · 320 阅读 · 0 评论 -
POJ 3735 Training little cats
题目连接:Training little cats题目大意:有n只猫咪,开始时每只猫咪有花生0颗,现有一组操作,由下面三个中的k个操作组成: 1. g i 给i只猫咪一颗花生米 2. e i 让第i只猫咪吃掉它拥有的所有花生米 3. s i j 将猫咪i与猫咪j的拥有的花生米交换 现将上述一组操作做m次原创 2017-08-24 11:13:21 · 270 阅读 · 0 评论 -
hdoj 5015 233 Matrix
题目链接:233 Matrix题目大意:给你一个矩阵的0行0列到n行0列,然后第0行的数是0,233,2333,23333,m列,m最大1e9,然后要求你去求n行m列的数是个啥,首先看到m列,我们可以想到需要用矩阵去加速算,那么首先退出来n行m列这个数可以通过前m-1列的所有数加上n行第0列来算,如下图(图片来自官方题解) 然后我们也就是说需要算出全m列的数,这某一列m行的数又可以由上一列的全行来原创 2017-08-23 21:29:18 · 329 阅读 · 0 评论 -
Codeforces Round #118 (Div. 1) A. Plant
题目链接:Plant题目大意:给你一些图形,问第n个图形里面有几个上三角形 题目思路:下一张图的上三角形和下三角形个数可以由上一张图得到,具体为upn=3∗upn−1+downn−1up{_n} = 3*up{_{n-1}}+down{_{n-1}}和downn=3∗downn−1+upn−1down{_n} = 3*down{_{n-1}}+up{_{n-1}},然后构造矩阵就好了#includ原创 2017-08-22 20:36:25 · 363 阅读 · 0 评论 -
hdoj 5667 Sequence
题目链接:Sequence题目大意:给你一个这样的公式,fn=⎧⎩⎨⎪⎪1,ab,abfcn−1fn−2,n=1n=2otherwisef_n=\left\{\begin{matrix} 1 ,&n=1 \\ a^b,&n=2 \\ a^bf_{n-1}^cf_{n-2},&otherwise \end{matrix}\right.,然后求fnf_n对p求余,给出n,a,b,c,p题目思路原创 2017-08-22 20:04:36 · 267 阅读 · 0 评论 -
Codeforces Round #257 (Div. 2) B. Jzzhu and Sequences
题目链接:Jzzhu and Sequences题目大意:给你一个递推式,求f(n)%1e+7题目思路:先要把给的递推式转化一下,然后求余的时候记得+MOD再求余就好了#include <map> #include <set> #include <queue> #include <stack> #include <cmath> #include <vector> #include <cstdio>原创 2017-08-22 11:18:38 · 265 阅读 · 0 评论 -
poj 3070 Fibonacci
题目链接:Fibonacci题目大意:求斐波那契的第n项对10000求余题目思路:构造矩阵后直接矩阵快速幂#include <map> #include <set> #include <queue> #include <stack> #include <cmath> #include <vector> #include <cstdio> #include <cstring> #include <cs原创 2017-08-22 10:35:43 · 257 阅读 · 0 评论 -
hdoj 5950 Recursive sequence
题目链接:Recursive sequence题目大意:有一个递推公式f(i)=2∗f(i−2)+f(i−1)+i4,f(1)=a,f(2)=bf(i) = 2*f(i-2)+f(i-1)+i^4,f(1) = a,f(2) = b,现在给出a,b,和n,求f(n),a,b,n < 2^31题目思路:很容易想到矩阵快速幂,然后推一个公式就好: 原矩阵: {ba168421}\begin{Bma原创 2017-08-07 17:44:19 · 760 阅读 · 0 评论 -
hdoj 6063(2017 Multi-University Training Contest - Team 3) RXD and math
题目链接:RXD and math题目大意:给你一个式子,∑nki=1μ2(i)×⌊nki−−√⌋\sum_{i = 1}^{n^k}{\mu^2(i) \times \lfloor \sqrt{\frac{n^k}{i}} \rfloor}(mu(i)是莫比乌斯函数),给出n和k,算出这个数%1e9+7题目思路:注意到一个数字xx必然会被唯一表示成a2×ba^2 ×b的形式.其中|μ(b)原创 2017-09-09 21:11:43 · 289 阅读 · 0 评论