3.1w+
社区成员
本题相对难理解的是arr[i]*(sum-arr[i]);sum是对所有输入的数字进行相加,这样可以在arr[1]时直接*sum,需要注意的是,其中它们两相乘时有一项乘arr[i]本身,所以这时我们需要减去arr[i]*arr[i]。
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
long sum=0;
long result=0;
long []arr=new long[n];
for(int i=0;i<arr.length;i++){
arr[i]=sc.nextLong();
sum+=arr[i];
}
for(int i=0;i<arr.length;i++){
result+=arr[i]*(sum-arr[i]);
sum-=arr[i];
}
System.out.println(result);
sc.close();
}
}