题目描述
在线性代数、计算几何中,向量点积是一种十分重要的运算。
给定两个 n 维向量a=(a1,a2,⋯,an) 和b=(b1,b2,⋯,bn),求点积 a·b=a1b1+a2b2+⋯+anbn。
输入格式
第一行是一个整数 n。1≤n≤1000。
第二行包含 n 个整数 a1,a2,⋯,an。
第三行包含 n 个整数b1,b2,⋯,bn。
相邻整数之间用单个空格隔开。每个整数的绝对值都不超过1000。
输出格式
一个整数,即两个向量的点积结果。
输入输出样例
输入 #1
3
1 4 6
2 1 5
输出 #1
36
运行代码
import java.util.*;
public class Main{
public static void main(String[]args){
Scanner s=new Scanner(System.in);
int n=s.nextInt();
int []a=new int[1005];//注意数组大小,防止数组越界,导致RE
int []b=new int[1005];
int sum=0;
for(int i=1;i<=n;i++){
int a1=s.nextInt();
a[i]=a1;
}
for(int i=1;i<=n;i++){
int b1=s.nextInt();
b[i]=b1;
sum+=a[i]*b[i];
}
System.out.println(sum);
}
}