hdu 4920 Matrix multiplication
来源:互联网 发布:网络会员制营销 编辑:程序博客网 时间:2024/04/30 12:09
Matrix multiplicationTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 334 Accepted Submission(s): 112
Total Submission(s): 334 Accepted Submission(s): 112
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.
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).
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.
Print n lines. Each of them contain n integers -- the matrix A×B in similar format.
Sample Input
10120 12 34 56 7
Sample Output
00 12 1
Author
Xiaoxu Guo (ftiasch)
Source
2014 Multi-University Training Contest 5
题解及代码:
- /*
- 签到题,简单的矩阵相乘,注意元素0的处理就不会超时了。
- */
- #include <iostream>
- #include <cstdio>
- #include <cstring>
- using namespace std;
- const int mod=3;
- int a[810][810],b[810][810];
- int temp[810][810];
- void multiple(int n,int p)
- {
- int i,j,k;
- for(i=0; i<n; i++)
- for(j=0; j<n; j++)
- {
- if(a[i][j]!=0)
- for(k=0; k<n; k++)
- temp[i][k]=(temp[i][k]+a[i][j]*b[j][k])%p;
- }
- for(int i=0;i<n;i++)
- {
- for(int j=0;j<n;j++)
- if(j==0) printf("%d",temp[i][j]);
- else printf(" %d",temp[i][j]);
- puts("");
- }
- }
- void init(int n)
- {
- memset(temp,0,sizeof(temp));
- for(int i=0;i<n;i++)
- {
- for(int j=0;j<n;j++)
- {
- scanf("%d",&a[i][j]);
- a[i][j]%=3;
- }
- }
- for(int i=0;i<n;i++)
- {
- for(int j=0;j<n;j++)
- {
- scanf("%d",&b[i][j]);
- b[i][j]%=3;
- }
- }
- }
- int main()
- {
- int n;
- while(cin>>n)
- {
- init(n);
- multiple(n,mod);
- }
- return 0;
- }
0 0
- hdu 4920 Matrix multiplication
- HDU 4920 Matrix multiplication
- hdu 4920 Matrix multiplication
- HDU 4920 Matrix multiplication
- HDU 4920 Matrix multiplication
- HDU-4920-Matrix multiplication
- HDU 4920 Matrix multiplication
- HDU-4920 Matrix multiplication
- HDU 4920 Matrix multiplication(bitset)
- hdu 4920 Matrix multiplication(高效)
- HDU 4920 (Matrix multiplication)
- HDU 4920 Matrix multiplication(矩阵乘法)
- hdu 4920 Matrix multiplication (矩阵相乘)
- HDU 4920 Matrix multiplication(矩阵相乘)
- hdu 4920 Matrix multiplication(矩阵乘法)
- hdu 4920 Matrix multiplication(矩阵坑题)
- HDU 4920 Matrix multiplication(矩阵乘法)
- hdu 4920——Matrix multiplication
- 【黑马程序员】Java学习技术博客——银行业务调度系统
- 从“O2O演唱会”中得到的启示
- 封了博客
- 关于java中的StringBuilder的线程安全问题
- 20 Funny Commands of Linux or Linux is Fun in Terminal
- hdu 4920 Matrix multiplication
- js 加载id的问题
- hdu 4912 Paths on the tree(lca+贪心)
- HDU 4309 Seikimatsu Occult Tonneru(网络流-最大流)
- NSInteger与NSString互转
- hdu 3418 Beautiful Dream数学题
- 杭电ACM 1398 Square Coins(母函数)
- POJ1159 Palindrome 【动态规划】
- 第一篇。