
알고리즘 분류 : 수학
난이도 : 실버5
출처 : 백준 - 귀찮아 (SIB)


중학교때 배운 공식을 사용하면 쉽게 풀 수 있다.
(a+b+c)^2 = a^2 + b^2 + c^2 + 2ab+ 2bc+ 2ac
ab+bc+ca =( (a+b+c)^2 - a^2 - b^2 - c^2 ) /2이므로 각각 숫자의 합, 각각 숫자의 제곱의 합을 구하면 쉽게 풀 수 있다.
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
StringTokenizer st= new StringTokenizer(br.readLine());
long sum1=0, sum2=0;
for(int i=0;i<N;i++) {
int num = Integer.parseInt(st.nextToken());
sum1+= num;
sum2+= num*num;
}
System.out.println((sum1*sum1-sum2)/2);
}
}

난이도가 높은 문제는 아니지만 수학 공식을 이용하면 쉽게 풀 수 있어서 가져왔다.