文章

12

粉丝

0

获赞

12

访问

651

头像
稀疏矩阵乘法的三元组表示 题解:
P5379 复旦大学2024年机试题
发布于2026年2月24日 12:46
阅读数 33

#include<bits/stdc++.h>
using namespace std;
const int N = 510;
struct node{
	int r,c,data;
};

struct row{//行
	int c, data;
};

vector<node> mat1;
vector<row> mat2_rows[N];
vector<node> ans;

bool func(const node& a, const node& b){
	if(a.r == b.r) return a.c < b.c;
	return a.r < b.r;
}

int main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	
	int m, k , n;
	cin>>m>>k>>n;
	
	for(int i = 0; i < m; i++){
		for(int j = 0 ; j < k ; j++){
			int data;
			cin>>data;
			if(data != 0){
				mat1.push_back({i,j,data});
			}
		}
	}
	
	
	for(int i = 0 ; i < k; i++){
		for(int j = 0 ; j < n; j++){
			int data;
			cin>>data;
			if(data != 0){
				mat2_rows[i].push_back({j,data});
			}
		}
	}
	
	
	for(int i = 0 ; i < mat1.size(); i++){
		int r1 = mat1[i].r;
		int c1 = mat1[i].c;
		
		for(int j = 0; j < mat2_rows[c1].size(); j++){
			int data = mat1[i...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发