Título: matriz de formación básicas de multiplicación
categorías:
- ACM
- Matriz de multiplicación
tags: - Bajo la marca mágica y
fecha: 03/14/2020 16:27:26
1 se inicializa número entero multiplicación, multiplicación de matrices se inicializa el mismo tamaño de la matriz unidad (sólo diagonal son todos 1). Hay que tener por los terceros resultados variables. Para más lazo de control para controlar no sólo el número de producto de conversión y cada uno multiplicando.
problema
preguntas básicas de multiplicación de matriz de formación
Las limitaciones de recursos
Plazo: 1,0 s Límite de memoria: 512.0MB
Descripción del problema
Dado un N-ésimo orden matrices A, A, potencia de salida M (M es un número entero no negativo)
, por ejemplo:
A =
1 2.
3. 4.
2 A de potencia
7 10.
15 22 se
Formato de entrada
La primera línea es un número entero positivo de N, M (1 <= N <= 30, 0 <= M <= 5), y representa una potencia del orden de la matriz A requiere
los siguientes N líneas del valor absoluto de la N no más de 10 no negativo número entero, el valor de la matriz a se describe
Formato de salida
Total de N líneas de salida de N enteros, M representa el poder de la matriz A que corresponde a la. Separadas por un espacio entre los números adyacentes
entrada de la muestra
2 2
1 2
3 4
Ejemplo de salida
7 10
15 22
algoritmo
#include<iostream>
#include<string.h>
#include<stdio.h>
using namespace std;
int main(){
//freopen("input.txt", "r", stdin);
int juzhen[30][30],jieguo[2][30][30],nn=0;
int n,m;
cin>>n>>m;
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cin>>juzhen[i][j];
jieguo[0][i][j]=i==j?1:0;
}
}
for(int i=0;i<m;i++)
{
nn=i&1?0:1;
for(int j=0;j<n;j++)
{
for(int k=0;k<n;k++)
{
int sum=0;
for(int l=0;l<n;l++)
{
sum+=jieguo[1-nn][j][l]*juzhen[l][k];
}
jieguo[nn][j][k]=sum;
}
}
}
for(int j=0;j<n;j++)
{
for(int k=0;k<n;k++)
cout<<jieguo[nn][j][k]<<" ";
cout<<endl;
}
}