【笔记】矩阵

1 Template

1.1 轻量化

灵活度较高,适合直接调用矩阵内值的情形。

typedef vector<vector<int>> Matrix;
void resize (Matrix& a, int n, int m) {
	a.resize(n, vector<int>(m));
}
Matrix operator * (const Matrix &a, const Matrix &b) {
	Matrix res; resize(res, a.size(), b[0].size());
	for (int i = 0; i < a.size(); i++)
		for (int j = 0; j < b[0].size(); j++)
			for (int k = 0; k < a[0].size();k++)
				(res[i][j] += 1ll*a[i][k] * b[k][j]%mod) %= mod;
	return res;
}

1.2 封装

作为一个整体,适合和其她东西一起用(eg. 线段树。

https://www.becoder.com.cn/submission/2493836

下面是 min+ 矩乘

1. 
posted @ 2024-08-06 11:07  CloudWings  阅读(16)  评论(0编辑  收藏  举报