博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVA 10870 Recurrences 矩阵快速幂
阅读量:5116 次
发布时间:2019-06-13

本文共 1484 字,大约阅读时间需要 4 分钟。

题意:给你递推公式要求矩阵快速幂的第n项

解题思路: 经典的矩阵快速幂递推第n项目做法。

解题代码:

1 // File Name: temp.cpp 2 // Author: darkdream 3 // Created Time: 2014年09月17日 星期三 11时35分45秒 4  5 #include
6 #include
7 #include
8 #include
9 #include
10 #include
11 #include
12 #include
13 #include
14 #include
15 #include
16 #include
17 #include
18 #include
19 #include
20 #include
21 #include
22 #include
23 #include
24 #define LL long long25 using namespace std;26 LL n ,m , d; 27 int ta,tb;28 struct Matrix29 {30 LL mat[15][15];31 void clear()32 {33 memset(mat,0,sizeof(mat));34 }35 void output()36 {37 for(int i = 0 ;i < n ;i ++)38 {39 for(int j = 0 ;j < n ;j ++)40 printf("%lld ",mat[i][j]);41 printf("\n");42 }43 }44 void init()45 {46 clear();47 for(int i = 0 ;i < n;i ++ )48 {49 scanf("%lld",&mat[0][i]);50 mat[0][i] %= m ; 51 }52 for(int i = 1;i < n;i ++)53 {54 mat[i][i-1] =1; 55 }56 }57 Matrix operator *(const Matrix &b) const58 {59 Matrix ret;60 ret.clear();61 for(int i = 0 ;i < n ;i ++)62 for(int j = 0;j < n;j ++)63 {64 for(int s = 0 ;s < n ;s ++)65 {66 ret.mat[i][j] =(ret.mat[i][j] + mat[i][s] * b.mat[s][j]) %m ; // 第I 行 第J 列 67 }68 }69 return ret;70 }71 };72 Matrix Pow( Matrix a ,LL t )73 {74 Matrix ret;75 ret.clear();76 for(int i = 0 ;i < n ;i ++)77 ret.mat[i][i] = 1;78 Matrix tmp = a; 79 while(t)80 {81 if(t&1) ret = ret * tmp;
View Code

 

转载于:https://www.cnblogs.com/zyue/p/3979350.html

你可能感兴趣的文章
gdb中信号的处理[转]
查看>>
LeetCode【709. 转换成小写字母】
查看>>
如何在Access2007中使用日期类型查询数据
查看>>
Jzoj4757 树上摩托
查看>>
CF992E Nastya and King-Shamans(线段树二分+思维)
查看>>
第一个Java Web程序
查看>>
树状数组_一维
查看>>
如果没有按照正常的先装iis后装.net的顺序,可以使用此命令重新注册一下:
查看>>
linux install ftp server
查看>>
嵌入式软件设计第8次实验报告
查看>>
算法和数据结构(三)
查看>>
Ubuntu下的eclipse安装subclipse遇到没有javahl的问题...(2天解决了)
查看>>
alter database databasename set single_user with rollback IMMEDIATE 不成功问题
查看>>
Repeater + Resources 列表 [原创][分享]
查看>>
WCF揭秘——使用AJAX+WCF服务进行页面开发
查看>>
【题解】青蛙的约会
查看>>
IO流
查看>>
mybatis调用存储过程,获取返回的游标
查看>>
设计模式之装饰模式(结构型)
查看>>
面向对象的设计原则
查看>>