6 solutions
-
3
#include<bits/stdc++.h> using namespace std; int n,m,k; int a[105][105],b[105][105],c[105][105]; int main(){ cin>>n>>m>>k; for(int i=0;i<n;i++) for(int j=0;j<m;j++) cin>>a[i][j]; for(int i=0;i<m;i++) for(int j=0;j<k;j++) cin>>b[i][j]; for(int i=0;i<n;i++) for(int j=0;j<k;j++){ long sum=0; for(int l=0;l<m;l++) sum+=a[i][l]*b[l][j]; c[i][j]=sum; } for(int i=0;i<n;i++){ for(int j=0;j<k;j++) cout<<c[i][j]<<" "; cout<<endl; } return 0; }
-
2
#include<bits/stdc++.h> using namespace std; int a[1000][1000],b[1000][1000],c[1000][1000]; int main() { int n,m,k; cin>>n>>m>>k; for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) cin>>a[i][j];//A for(int i=1;i<=m;i++) for(int j=1;j<=k;j++) cin>>b[i][j];//B //C[i][j] = A[i][0]×B[0][j] + A[i][1]×B[1][j] + …… +A[i][m-1]×B[m-1][j] for(int i=1;i<=n;i++){ for(int j=1;j<=k;j++){ for(int ij=1;ij<=m;ij++){ c[i][j]+=a[i][ij]*b[ij][j]; } } } for(int i=1;i<=n;i++){ for(int j=1;j<=k;j++){ cout<<c[i][j]<<" "; } cout<<"\n"; } return 0; }
-
2
#include <bits/stdc++.h> using namespace std; int main(int argc, char **argv){ int n,m,k; cin >> n >> m >> k; int a[n][m],b[m][k],c[n][k]; for (int i = 0;i < n;i++){ for (int j = 0;j < k;j++){ c[i][j] = 0; } } for (int i = 0;i < n;i++){ for (int j = 0;j < m;j++){ cin >> a[i][j]; } } for (int i = 0;i < m;i++){ for (int j = 0;j < k;j++){ cin >> b[i][j]; } } for (int i = 0;i < n;i++){ for (int j = 0;j < k;j++){ for (int d = 0;d < m;d++){ c[i][j] += a[i][d] * b[d][j]; } } } for (int i = 0;i < n;i++){ for (int j = 0;j < k;j++){ printf("%d ",c[i][j]); } cout << endl; } return 0; } // C[i][j] = A[i][0]×B[0][j] + A[i][1]×B[1][j] + …… +A[i][m-1]×B[m-1][j] // c[2][2] = a[2][0] * b[0][2] + a[2][1] * b[1][2]
-
2
`
#include<bits/stdc++.h> using namespace std; int a[110][110],b[110][110],c[110][110],m,n,k; double s; int main() { cin>>n>>m>>k; for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) cin>>a[i][j]; for(int i=1;i<=m;i++) for(int j=1;j<=k;j++) cin>>b[i][j]; for(int i=1;i<=n;i++) for(int j=1;j<=k;j++) for(int l=1;l<=m;l++) c[i][j]+=a[i][l]*b[l][j];//将新矩阵的每一个点都看作计数器来计算 for(int i=1;i<=n;i++){ for(int j=1;j<=k;j++) cout<<c[i][j]<<" "; cout<<endl;//注意换行 } return 0; }
-
1
#include<bits/stdc++.h> using namespace std; int a[110][110],b[110][110],c[110][110],m,n,k; double s; int main(){ cin>>n>>m>>k; for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) cin>>a[i][j]; for(int i=1;i<=m;i++) for(int j=1;j<=k;j++) cin>>b[i][j]; for(int i=1;i<=n;i++) for(int j=1;j<=k;j++) for(int l=1;l<=m;l++) c[i][j]+=a[i][l]*b[l][j]; for(int i=1;i<=n;i++){ for(int j=1;j<=k;j++) cout<<c[i][j]<<" "; cout<<endl; } return 0; }
-
-3
#include<bits/stdc++.h> using namespace std; int a[105][105]; int b[105][105]; int c[105][105]; int main(){ int n,m,k,s=0; cin>>n>>m>>k;
for(int i=0;i<n;i++){ for(int j=0;j<m;j++){ cin>>a[i][j]; } }for(int i=0;i<m;i++){ for(int j=0;j<k;j++){ cin>>b[i][j]; } } for(int i=0;i<n;i++){ for(int j=0;j<k;j++){ for(int j1=0;j1<m;j1++){ s+=a[i][j1]*b[j1][j]; } c[i][j]+=s; s=0; } } for(int i=0;i<n;i++){ for(int j=0;j<k;j++){ cout<<c[i][j]<<" "; } cout<<endl; }
} //C[i][j] = A[i][0]×B[0][j] + A[i][1]×B[1][j] + …… +A[i][m-1]×B[m-1]j。
- 1
Information
- ID
- 611
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 3
- Tags
- # Submissions
- 95
- Accepted
- 53
- Uploaded By