代码改变世界

Sicily/2470. Matrix Commutative Multiplication

2011-08-27 17:19  Min·zc  阅读(322)  评论(0编辑  收藏  举报

线性代数

如果矩阵A与所有的同阶矩阵可以交换, 那么A是数量矩阵。

数量矩阵的定义:对角线,所有元素相同。

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
        int t;
        //cin>>t;
        scanf("%d",&t);
        while(t--)
        {
                int n;
                scanf("%d",&n);
                //cin>>n;
                int flag=1;
                int num;
                for(int i=1;i<=n;i++)
                {
                        for(int j=1;j<=n;j++)
                        {
                                int tem;
                                //cin>>tem;
                                scanf("%d",&tem);
                                if(j==1&&i==1)
                                        num=tem;
                                if(j==i)
                                        if(tem!=num)
                                                flag=0;
                                if(j!=i)
                                        if(tem!=0)
                                                flag=0;
                        }
                }
                if(flag)
                        //cout<<"YES"<<endl;
                        printf("YES\n");
                else
                        printf("NO\n");
                        //cout<<"NO"<<endl;
        }
}