HihoCode-1675-稀疏矩阵乘积

上来先一顿暴力,结果70分就超时了。

然后意识到稀疏矩阵,有很多0,如果c[i][j] != 0,那么一定存在至少一个k满足a[i][k] != 0 && b[k][j] != 0;

然后就一发水A啦

1675 稀疏矩阵乘积 AC G++ 35ms 15MB
复制代码
#include "bits/stdc++.h"
using namespace std;
typedef long long LL;
typedef pair<int, int> PII;
const int INF = 0x3f3f3f3f;
vector<PII> a[2005];
int b[2005][2005];
int main() {
    int n, p, q;
    int x, y, k;
    scanf("%d%d%d", &n, &p, &q);
    while (p--) {
        scanf("%d%d%d", &x, &y, &k);
        a[x].push_back({y, k});
    }
    while (q--) {
        scanf("%d%d%d", &x, &y, &k);
        b[x][y] = k;
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            int ans = 0;
            for (PII u : a[i]) {
                if (b[u.first][j]) {
                    ans += u.second * b[u.first][j];
                }
            }
            if (ans != 0) {
                printf("%d %d %d\n", i, j, ans);
            }
        }
    }
    return 0;
}
复制代码

 

posted @   Jathon-cnblogs  阅读(164)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示