向量点积计算

题目描述

在线性代数、计算几何中,向量点积是一种十分重要的运算。

给定两个 n 维向量 a=(a1​,a2​,⋯,an​) 和b=(b1​,b2​,⋯,bn​),求点积a·b=a1​b1​+a2​b2​+⋯+an​bn​。

输入格式

第一行是一个整数 n。1≤n≤1000。

第二行包含 n 个整数 a1​,a2​,⋯,an​。

第三行包含 n 个整数 b1​,b2​,⋯,bn​。

相邻整数之间用单个空格隔开。每个整数的绝对值都不超过 1000。

输出格式

一个整数,即两个向量的点积结果。

输入输出样例

输入 #1

3
1 4 6
2 1 5

输出 #1

36

所以,知道提我们可以用以下代码求a·b:

int s=0; //用来计算a·b
for(int i=1;i<=n;i++){
    s+=a[i]*b[i]
}

 所以,我们只需要把上面的代码代入进去,就有了成品代码了:

#include
using namespace std;
int main(){
	int n,a[10005],b[10005];
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	for(int i=1;i<=n;i++){
		cin>>b[i];
	}
	int s=0;
	for(int i=1;i<=n;i++){
		s+=a[i]*b[i];
	}
	cout<

你可能感兴趣的:(算法)