poj 3318 (矩阵乘积)
来源:互联网 发布:易凯软件价格 编辑:程序博客网 时间:2024/05/25 01:36
转换成一维矩阵的形式 O(n^2)
代码:
#include<stdio.h>#include<string.h>#define maxn 505int n;int a[maxn][maxn],b[maxn][maxn],c[maxn][maxn];int abd[maxn],bd[maxn],cd[maxn],d[maxn];void init(int m[][maxn]){ for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) scanf("%d",&m[i][j]);}int main(){ //freopen("Input.txt","r",stdin); int i,j; while(~scanf("%d",&n)) { init(a);init(b);init(c); for(i=1;i<=n;i++) d[i]=i; memset(bd,0,sizeof(bd)); memset(cd,0,sizeof(cd)); memset(abd,0,sizeof(abd)); for(i=1;i<=n;i++) for(j=1;j<=n;j++) { bd[i]+=b[i][j]*d[j]; cd[i]+=c[i][j]*d[j]; } for(i=1;i<=n;i++) for(j=1;j<=n;j++) abd[i]+=a[i][j]*bd[j]; int flag=0; for(i=1;i<=n;i++) if(abd[i]!=cd[i]) { flag=1;break; } if(flag==1) printf("NO\n"); else printf("YES\n"); } return 0;}
如果对输入函数进行处理,时间会省掉1s;
代码:
#include<stdio.h>#include<string.h>#define maxn 505int n;int a[maxn][maxn],b[maxn][maxn],c[maxn][maxn];int abd[maxn],bd[maxn],cd[maxn],d[maxn];void in(int &m){ char ch; int flag=0; while((ch=getchar())<'0'||ch>'9') if(ch=='-') flag=1; for(m=0;ch>='0'&&ch<='9';ch=getchar()) m=m*10+ch-'0'; if(flag) m*=-1;}void init(int m[][maxn]){ for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) in(m[i][j]);}int main(){ //freopen("Input.txt","r",stdin); int i,j; while(~scanf("%d",&n)) { init(a);init(b);init(c); for(i=1;i<=n;i++) d[i]=i; memset(bd,0,sizeof(bd)); memset(cd,0,sizeof(cd)); memset(abd,0,sizeof(abd)); for(i=1;i<=n;i++) for(j=1;j<=n;j++) { bd[i]+=b[i][j]*d[j]; cd[i]+=c[i][j]*d[j]; } for(i=1;i<=n;i++) for(j=1;j<=n;j++) abd[i]+=a[i][j]*bd[j]; int flag=0; for(i=1;i<=n;i++) if(abd[i]!=cd[i]) { flag=1;break; } if(flag==1) printf("NO\n"); else printf("YES\n"); } return 0;}
- poj 3318 (矩阵乘积)
- 矩阵乘积
- 矩阵乘积
- POJ 3233:Matrix Power Series 矩阵快速幂 乘积
- C++ 8(乘积矩阵)
- 矩阵链乘积
- 矩阵乘积验证器
- 任意大小矩阵乘积
- 计算矩阵连乘积
- 计算矩阵连乘积
- 计算矩阵连乘积
- 1127: 矩阵乘积
- 1127: 矩阵乘积
- 矩阵的乘积【水题】
- 矩阵的各种乘积
- 1127: 矩阵乘积
- POJ 1032 最大乘积
- 计算两个矩阵的乘积
- Thread.sleep 四种标示方式
- Log4j 配置
- Instagram有权力去出售你的照片?!
- VS2010 Winform RLDC报表实现
- WPF新建线程覆盖窗口的进度条
- poj 3318 (矩阵乘积)
- Exception: Timed out after 30000ms(selenium超时)
- 向量几何在游戏编程中的使用1
- non-trivial heuristically
- jdk 环境变量配置
- microformats学习笔记
- JDK6内存泄露定位方法 - jmap
- centos下redmine的安装
- drbd的使用