zoukankan      html  css  js  c++  java
  • hdu 4920 Matrix multiplication (矩阵乘法)

    Problem Description
    Given two matrices A and B of size n×n, find the product of them.
    bobo hates big integers. So you are only asked to find the result modulo 3.
     
    Input
    The input consists of several tests. For each tests:
    The first line contains n (1≤n≤800). Each of the following n lines contain n integers -- the description of the matrix A. The j-th integer in the i-th line equals Aij. The next n lines describe the matrix B in similar format (0≤Aij,Bij≤109).
     
    Output
    For each tests:
    Print n lines. Each of them contain n integers -- the matrix A×B in similar format.
     
    Sample Input
    1
    0
    1
    2
    0 1
    2 3
    4 5
    6 7
     
    Sample Output
    0
    0 1
    2 1

          矩阵乘法就三个for循环而已,没什么说的。不过此题好坑,要小心,如何坑的,请看代码。

       

     1 #include<cstdio>
     2 #include<cstring>
     3 using namespace std;
     4 int n,a[804][804],b[804][804],c[804][804];
     5 int main()
     6 {
     7     int i,j,k;
     8     while (~scanf("%d",&n))
     9     {
    10         for (i=1;i<=n;i++)
    11         for (j=1;j<=n;j++) c[i][j]=0;
    12         for (i=1;i<=n;i++)
    13         for (j=1;j<=n;j++)
    14         {
    15             scanf("%d",&a[i][j]);
    16             a[i][j]%=3;//每输入都要%3,让数据变小,下面才可不%3。
    17         }
    18         for (i=1;i<=n;i++)
    19         for (j=1;j<=n;j++)
    20         {
    21             scanf("%d",&b[i][j]);
    22             b[i][j]%=3;
    23         }
    24         for (k=1;k<=n;k++) //这个循环不能换在j循环下面,不然会超时。什么原因暂时不清楚。
    25         for (i=1;i<=n;i++)
    26         for (j=1;j<=n;j++)
    27             c[i][j]+=a[i][k]*b[k][j]; //这里不能%3,不然会超时,因为多算了一步。
    28         for (i=1;i<=n;i++)
    29         {
    30             for (j=1;j<n;j++)
    31                 printf("%d ",c[i][j]%3);
    32             printf("%d
    ",c[i][j]%3);
    33         }
    34     }
    35     return 0;
    36 }
  • 相关阅读:
    Altium Designer如何从已有的PCB图中导出封装库
    获得内核函数地址的四种方法
    poj2976 Dropping tests
    poj3045 Cow Acrobats
    CF916C Jamie and Interesting Graph
    poj3104 Drying
    poj2455 Secret Milking Machine
    poj2289 Jamie's Contact Groups
    网络流最小路径覆盖
    CF897C Nephren gives a riddle
  • 原文地址:https://www.cnblogs.com/pblr/p/4738024.html
Copyright © 2011-2022 走看看