c++ struct下的矩阵乘法

直接上代码(我比较懒)

struct M{
	ll x[55][55];
	M (){
		memset(x,0,sizeof(x));
	}
	M clear(int a){
		for (int i=0;i<n;i++)
		  x[i][a]=0;
	}
	M out(){
		for (int i=0;i<n;i++)
		  {
		  	  for (int j=0;j<n;j++)
		  	    cout<<x[i][j]<<" ";
		  	  cout<<endl;
		  }
	}
	friend M operator *(M a,M b){
		M c;
		for (int i=0;i<n;i++)
		  for (int j=0;j<n;j++)
		    for (int k=0;k<n;k++)
		      c.x[i][j]=mo(c.x[i][j]+a.x[i][k]*b.x[k][j],p);
		return c;
	}
	friend M operator ^(M a,int b){
		M ans;
		for (int i=0;i<n;i++) ans.x[i][i]=1;
		for (;b;b>>=1,a=a*a)
		  if (b&1) ans=ans*a;
		return ans;
	}
};

鳄鱼沼泽


题目描述

潘塔纳尔沼泽地号称世界上最大的一块湿地,它地位于巴西中部马托格罗索州的南部地区。每当雨季来临,这里碧波荡漾、生机盎然,引来不少游客。为了让游玩更有情趣,人们在池塘的中央建设了几座石墩和石桥,每座石桥连接着两座石墩,且每两座石墩之间至多只有一座石桥。这个景点造好之后一直没敢对外开放,原因是池塘里有不少危险的食人鱼。豆豆先生酷爱冒险,他一听说这个消息,立马赶到了池塘,想做第一个在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值