矩阵乘法模板 bsoj2830
来源:互联网 发布:windows排名 编辑:程序博客网 时间:2024/05/16 09:34
从昨天晚上开始学矩阵乘。。。。
今天早晨突然发现这个题其实10行的暴力可以过。。。
今天下午矩阵乘法彻底包装到了结构里。。以后大概矩阵都是这样写吧。。。
#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#define mod 7#define MAX 90using namespace std;int A,B,n;struct wbysr_matrix{int n,m;int a[MAX][MAX];inline void init(int tn,int tm){n=tn;m=tm;for(int i=0;i<=n;i++)for(int j=0;j<=m;j++)a[i][j]=0;}void print(){for(int i=1;i<=n;i++,printf("\n"))for(int j=1;j<=m;j++)printf("%d ",a[i][j]);}}e,w;inline wbysr_matrix operator *(const wbysr_matrix &a,const wbysr_matrix &b){if(a.m!=b.n)return a;wbysr_matrix c;c.init(a.n,b.m);for(int i=1;i<=a.n;i++)for(int j=1;j<=b.m;j++)for(int k=1;k<=a.m;k++)c.a[i][j]+=(a.a[i][k]*b.a[k][j])%7;return c;}inline wbysr_matrix pow(wbysr_matrix &a,int x){if(x==1)return a;wbysr_matrix b=pow(a,x>>1);b=b*b;if(x%2)b=a*b;return b;}int main(){scanf("%d%d %d",&A,&B,&n);e.init(2,1);e.a[1][1]=e.a[2][1]=1;w.init(2,2);w.a[1][1]=0;w.a[1][2]=1;w.a[2][1]=B;w.a[2][2]=A;wbysr_matrix now;now.init(2,1);now=pow(w,n-1)*e;printf("%d\n",now.a[1][1]%7);return 0;}
0 0
- 矩阵乘法模板 bsoj2830
- 矩阵乘法的模板
- 矩阵乘法 贴个新模板
- 矩阵乘法模板
- fzu2198(矩阵乘法模板)
- c++模板 矩阵乘法
- 矩阵乘法 模板
- {模板}打包矩阵乘法
- 模板整理: 矩阵乘法
- 矩阵乘法快速幂模板
- 矩阵乘法(2)【模板】
- 矩阵 模板(矩阵加减,矩阵乘法,矩阵求逆)
- 矩阵乘法模板类头文件C++
- C++模板实战8:矩阵乘法
- ACM 矩阵乘法模板(T_T)+快速幂
- 矩阵乘法学习记录+模板+例题
- 【矩阵的乘法和加法模板】
- 那啥,,矩阵乘法,矩阵快速幂模板
- PHP环境安装问题
- #趣米杯#码农天气--码农自己的天气APP(二)
- JAVA的File类中应用strategy模式(回调对象)
- 优秀开源代码解读之JS与iOS Native Code互调的优雅实现方案
- 添加Application Bar及多语言支持
- 矩阵乘法模板 bsoj2830
- java调用基于SOAP的CXF 框架的WebService客户端和服务器段helloworld例子
- 反射的使用
- php获取bing每日图片
- Android Service被系统回收的解决方法
- iOS 控件之 UIDatePicker
- android中的事件类型分为按键事件和屏幕触摸事件
- android 开机logo
- [linux基础]linux的权限知识