社区讨论

关于单位矩阵

P2886[USACO07NOV] Cow Relays G参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@lobjkvlr
此快照首次捕获于
2023/10/29 22:03
2 年前
此快照最后确认于
2023/11/04 03:06
2 年前
查看原帖
CPP
matrix () {
        memset(a,0x3f,sizeof a);
    }
    void build(){
        for(re i=1;i<=n;++i) a[i][i]=0;
    }
    friend matrix operator * (const matrix &x,const matrix &y){
        matrix z;
        for(re i=1;i<=n;++i)
            for(re j=1;j<=n;++j)
                for(re k=1;k<=m;++k)
                    z.a[i][j]=min(z.a[i][j],x.a[i][k]+y.a[k][j]);
        return z;
    };
    matrix qpow(matrix k,int n){
        matrix s;s.build();
        for(;n;n>>=1,k=k*k)if(n&1)s=s*k;
        return s;
    }
};
为什么这样定义矩阵乘法的时候单位矩阵表示为“除了主对角线为0之外其余为正无穷”?

回复

2 条回复,欢迎继续交流。

正在加载回复...