这个70分
是按照题目给出的顺序的写的,先,再×V
#include <iostream>
using namespace std;
int main() {
int n,d;
cin>>n>>d;
int q[1000][30];
int k[1000][30];
int v[1000][30];
int w[1000];
int temp[1000][1000]={0}; //刚开始的时候写成了int temp[1000][30]={0};注意这里temp的范围
for(int i=0;i<n;i++){
for(int j=0;j<d;j++){
cin>>q[i][j];
}
}
for(int i=0;i<n;i++){
for(int j=0;j<d;j++){
cin>>k[i][j];
}
}
for(int i=0;i<n;i++){
for(int j=0;j<d;j++){
cin>>v[i][j];
}
}
for(int i=0;i<n;i++){
cin>>w[i];
}
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
for(int a=0;a<d;a++){
temp[i][j]+=q[i][a]*k[j][a];
}
}
}
int res[1000][30]={0};
for(int i=0;i<n;i++){
for(int j=0;j<d;j++){
for(int a=0;a<n;a++){
res[i][j]+=temp[i][a]*v[a][j];
}
res[i][j]*=w[i];
cout<<res[i][j]<<" ";
}
cout<<endl;
}
return 0;
}