题目链接题意 : 用矩阵相乘求斐波那契数的后四位。思路 :基本上纯矩阵快速幂。 1 //3070 2 #include 3 #include 4 #include 5 6 using namespace std; 7 8 struct Matrix 9 {10 int v[2][2...
分类:
其他好文 时间:
2014-06-28 17:48:14
阅读次数:
214
Description has only two SentencesTime Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 852 Accep...
分类:
其他好文 时间:
2014-06-27 00:37:32
阅读次数:
246
UVA 10692 - Huge Mods
题目链接
题意:求a0a1a2...mod m
思路:直接算肯定不行,利用欧拉定理ab=a(b mod phi(m) + phi(m))(b>=phi(m)),对指数进行降值处理,然后就可以利用快速幂去计算了,计算过程利用递归求解。
代码:
#include
#include
const int N = 1005;
i...
分类:
其他好文 时间:
2014-06-26 11:43:20
阅读次数:
290
题目链接:bnu 34895 Elegant String
题目大意:给定n和k,表示有一个长度为n的序列,序列中的元素由0~k组成,问说有多少个串满足不包含0~k的全排列。
解题思路:矩阵快速幂,根据dp[i][j]表示说第i为有j个相同,写出递推式,根据递推式求出矩阵。
#include
#include
typedef long long ll;
const ll MOD...
分类:
其他好文 时间:
2014-06-26 06:54:09
阅读次数:
205
Description
监狱有连续编号为1...N的N个房间,每个房间关押一个犯人,有M种宗教,每个犯人可能信仰其中一种。如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱
Input
输入两个整数M,N.1
Output
可能越狱的状态数,模100003取余
Sample Input
2 3
Sample Output
6
...
分类:
其他好文 时间:
2014-06-24 20:50:44
阅读次数:
227
题目大意:
T组测试数据,求(A1B1+A2B2+ ... +AHBH)mod M.
解题思路:
对于普通暴力算法一定是
A1*A1*A1.....*A1 乘以 B1次,
A2*A2...........*A2 乘以 B2次,
......................................
然后全部相加起来,这样效率很低,肯定是超时了
那么有什么办法解决这一问题,可以用快速幂,
如果 A1^2有了,那么 A1^4就可以得到,A1^8也可以得到,...... ,立刻由n降到了lgn
可以...
分类:
其他好文 时间:
2014-06-22 16:17:10
阅读次数:
178
http://poj.org/problem?id=1721
大致题意:原始序列通过洗牌机洗牌s次后变为当前序列,已知当前序列,求原始序列。
在置换群快速幂运算 研究与探讨中最后有详解,有两种解法,一种是求出置换的长度a(即一副牌洗a次后变回原来的位置),现已知原始序列置换s次变为当前序列,那么当前序列再置换a-s次就是原始序列了。求a就是直接模拟每个置换的过程,直到某序列与当...
分类:
其他好文 时间:
2014-06-18 12:14:44
阅读次数:
203
DescriptionInput包含6个用空格分割的m,a,c,X0,n和g,其中a,c,X0是非负整数,m,n,g是正整数。Output输出一个数,即Xn mod gSample Input11 8 7 1 5 3Sample Output2快速幂+快速乘 1 type 2 matrix=...
分类:
其他好文 时间:
2014-06-18 09:32:46
阅读次数:
179
http://poj.org/problem?id=3128
大致题意:输入一串含26个大写字母的字符串,可以把它看做一个置换,判断这个置换是否是某个置换的平方。
思路:详解可参考置换群快速幂运算
研究与探讨。
可以先正着考虑一个置换的平方出现什么情况。对于置换中的循环,若其长度为偶数,平方以后一定分成了两个长度相等的循环,若长度是奇数,平方以后仍是一个循环,长度不变。因...
分类:
其他好文 时间:
2014-06-17 23:13:25
阅读次数:
291