hdu4920Matrix multiplication(模3矩阵相乘)
来源:互联网 发布:kali linux arp 编辑:程序博客网 时间:2024/06/06 03:36
Matrix multiplication
Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 4275 Accepted Submission(s): 1718
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
模3矩阵相乘,摸3后只有0,1,2 3个情况,去掉a[i][k],为0的情况,相当于减少一维情况,这样floyed就能解了
#include<cstdio>#include<cmath>#include<iostream>#include<cstring>#include<algorithm>#include<cmath>#include<map>#include<set>#include<stack>#include<queue>using namespace std;#define ll __int64#define usint unsigned int#define mz(array) memset(array, 0, sizeof(array))#define minf(array) memset(array, 0x3f, sizeof(array))#define REP(i,n) for(int i=0;i<(n);i++)#define FOR(i,x,n) for(int i=(x);i<=(n);i++)#define RD(x) scanf("%d",&x)#define RD2(x,y) scanf("%d%d",&x,&y)#define RD3(x,y,z) scanf("%d%d%d",&x,&y,&z)#define WN(x) printf("%d\n",x);#define RE freopen("D.in","r",stdin)#define WE freopen("1.out","w",stdout)using namespace std;int a[800][800],b[800][800],c[800][800];int n;int main(){ while(scanf("%d",&n)!=EOF) { 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; } memset(c,0,sizeof(c)); for(int k=0; k<n; k++) for(int i=0; i<n; i++) for(int j=0; j<n; j++) c[i][j]+=a[i][k]*b[k][j]; for(int i=0; i<n; i++) { for(int j=0; j<n-1; j++) { putchar(c[i][j]%3+'0'); putchar(' '); } putchar(c[i][n-1]%3+'0'); puts(""); } } return 0;}
0 0
- hdu4920Matrix multiplication(模3矩阵相乘)
- Hdu4920Matrix multiplication(矩阵乘法)
- hdu4920Matrix multiplication (矩阵,bitset)
- hdoj4920Matrix multiplication【矩阵相乘】
- Matrix Multiplication+adream+矩阵相乘
- hdu 4920 Matrix multiplication (矩阵相乘)
- HDU 4920 Matrix multiplication(矩阵相乘)
- HDOJ Matrix multiplication 4920【矩阵相乘】
- ACdream 1213 Matrix Multiplication(矩阵相乘)
- HDOJ 4920 Matrix multiplication (矩阵相乘)
- hdoj Matrix multiplication 4920 (矩阵相乘)
- 【HDU】4920 - Matrix multiplication(矩阵相乘)
- POJ3318:Matrix Multiplication(矩阵相乘)
- DP8 矩阵链相乘 Matrix Chain Multiplication @geeksforgeeks
- hdu 4920 Matrix multiplication(多校第5场,矩阵相乘)
- POJ 3318 Matrix Multiplication【矩阵相乘——随机化检测】
- HDOJ 题目4920 Matrix multiplication(矩阵相乘,优化)
- POJ 2246/ ZOJ 1094 : Matrix Chain Multiplication - 矩阵相乘,模拟
- UVA-568 Just the Facts
- 反编译APK获取代码&资源
- c,c++里面,头文件里面的ifndef /define/endif的作用
- CNZZ数据专家使用方法?
- Failed to load the LayoutLib: com/android/layoutlib/bridge/Bridge : Unsupported major.minor version
- hdu4920Matrix multiplication(模3矩阵相乘)
- Lock和Synchronized区别
- 每天一个linux命令(1):ls命令
- 在OpenCV for Android 2.4.5中使用SURF(nonfree module)
- 远程服务
- service调用bugreport
- Windows下如何卸载MySQL
- 求职系列1--树构造、遍历
- JSON--List集合转换成JSON对象