北邮新OJ96

来源:互联网 发布:淘宝部分退货运费险 编辑:程序博客网 时间:2024/05/29 17:54

http://code.bupt.edu.cn/problem/p/96/

#include<stdio.h>#include<stdlib.h>int main(){    int T;    scanf("%d",&T);    for(int a=1;a<=T;a++)    {        int n,k;        scanf("%d %d",&n,&k);        int * * s;        int * * sum;        int * * tmp;        s=new int * [n+1];        sum=new int * [n+1];        tmp=new int * [n+1];        for(int i=1;i<=n;i++)        {            s[i]=new int[n+1];            sum[i]=new int[n+1];            tmp[i]=new int[n+1];        }        for(int i=1;i<=n;i++)            for(int j=1;j<=n;j++)            {                scanf("%d",&s[i][j]);                sum[i][j]=s[i][j];            }        for(int p=1;p<k;p++)        {            for(int i=1;i<=n;i++)                for(int j=1;j<=n;j++)                {                    tmp[i][j]=0;                    for(int k=1;k<=n;k++)                        tmp[i][j]=tmp[i][j]+sum[i][k]*s[k][j];                }            for(int i=1;i<=n;i++)                for(int j=1;j<=n;j++)                    sum[i][j]=tmp[i][j];        }        for(int i=1;i<=n;i++)        {            for(int j=1;j<n;j++)                printf("%d ",sum[i][j]);            printf("%d\n",sum[i][n]);        }    }    //system("pause");    return 0;}


0 0