矩阵相乘

来源:互联网 发布:80端口关闭有什么影响 编辑:程序博客网 时间:2024/05/21 01:31
  1. <span style="font-size:14px;">struct node   
  2. {   
  3.     int mp[N][N];   
  4.     node ()   
  5.     {   
  6.         rep(i,N) rep(j,N)  mp[i][j]=0;   
  7.     }   
  8.     node (int mp[N][N])   
  9.     {   
  10.         rep(i,N)    rep(j,N)    this->mp[i][j]=mp[i][j];   
  11.     }   
  12.     node operator *(node &a)   
  13.     {   
  14.         node c;   
  15.         rep(i,N)   
  16.             rep(j,N)   
  17.                rep(k,N)   
  18.                { c.mp[i][j]+=(mp[i][k]*a.mp[k][j])%(mod-1);   
  19.                    c.mp[i][j]%=(mod-1);}   
  20.         return c;   
  21.     }   
  22. };   
  23. node mul(node b,int n)   
  24. {   
  25.     if(n==1)   
  26.         return b;   
  27.     node a=mul(b,n/2);   
  28.     if(n%2==0)   
  29.         return a*a;   
  30.     else   
  31.         return b*a*a;   
  32. }  
  33. </span>  
0 0
原创粉丝点击