11885 - Number of Battlefields
题意:给周长,求能围成的战场数目,不包括矩形。
思路:具体的递推没递推出来,但是看了网上一个规律,如果包括矩形的答案应该是斐波那契数列(但是奇数情况为0),然后减去矩形数目就是答案,矩形数目为n / 2 - 1,用矩阵快速幂就能求了。
具体的递推过程哪位大神能指点下。。。
代码:
#includ...
分类:
其他好文 时间:
2014-07-02 09:24:28
阅读次数:
175
题目连接:uva 11885 - Number
of Battlefields
题目大意:给出周长p,问多少种形状的周长为p的,并且该图形的最小包围矩阵的周长也是p,不包括矩形。
解题思路:矩阵快速幂,如果包含矩形的话,对应的则是斐波那契数列的偶数项,所以对应减去矩形的个数即可。
#include
#include
typedef long long ll;
const l...
分类:
其他好文 时间:
2014-07-01 06:21:33
阅读次数:
226
题目链接题意 : 用矩阵相乘求斐波那契数的后四位。思路 :基本上纯矩阵快速幂。 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
题意:N,T,S,E:给你T条边,每条边两端都有编号和权值,问从S走到E允许走N条边,求最短路。
foyld加矩阵快速幂思想。
注意要把边离散
#include
#include
#include
#include
using namespace std;
#define M 303
#define inf 0x3fffffff
struct node
{
...
分类:
其他好文 时间:
2014-06-27 07:39:23
阅读次数:
178
题目链接: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
矩阵快速幂其实跟普通快速幂一样,只是把数换成矩阵而已。模板,两种写法,亲测可用://made by whatbeg//2014.6.15struct Matrix{ int m[3][3];};Matrix Mul(Matrix a,Matrix b){ Matrix c; mem...
分类:
其他好文 时间:
2014-06-18 22:35:45
阅读次数:
277
一些递推关系如f(n) = af(n-1)+bf(n-2)+...+tf(n-k)等,在n很大的时候,O(n)的算法都不能满足要求的时候,往往可以化为矩阵快速幂来做,复杂度可以降为O(logn),大大减少了运行时间。如何将一个递推关系式化为矩阵呢?比如这样一个递推关系: f(n) = 2*f(n-1...
分类:
其他好文 时间:
2014-06-18 20:54:04
阅读次数:
165
题目大意:
求刚好经过K条路的最短路
我们知道如果一个矩阵A[i][j] 表示表示 i-j 是否可达
那么 A*A=B B[i][j] 就表示 i-j 刚好走过两条路的方法数
那么同理
我们把i-j 的路径长度存到A 中。
在A*A的过程中,不断取小的,那么最后得到的也就是i - j 走过两条路的最短路了。
当然也是利用到了floyd的思想。
然后要...
分类:
其他好文 时间:
2014-06-16 20:50:53
阅读次数:
195
http://poj.org/problem?id=3735
大致题意:
有n只猫,开始时每只猫有花生0颗,现有一组操作,由下面三个中的k个操作组成:
1. g i 给i只猫一颗花生米
2. e i 让第i只猫吃掉它拥有的所有花生米
3. s i j 将猫i与猫j的拥有的花生米交换
现将上述一组操作循环m次后,问每只猫有多少颗花生?
再一次感受到了...
分类:
其他好文 时间:
2014-06-14 10:54:33
阅读次数:
234