题目大意:
问A-B 走K 部的方法数。
如果矩阵 a 为任意一个点到另外一个点 走 1 步的方法数
那么 a*a 就是任意一个点到另外一个点 走 2 步的方法数
。。。
那么直接快速幂。
#include
#include
#include
#include
#include
#define N 10 using namespace std; int mod = 1000; typedef long long LL; struct matrix { int a[20][20]; }origin; int n,m; matrix multiply(matrix x,matrix y) { matrix temp; memset(temp.a,0,sizeof(temp.a)); for(int i=0;i
>=1; A=multiply(A,A); } return res; } void print(matrix x) { for(int i=0;i