시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
2 초 | 256 MB | 1065 | 315 | 167 | 25.113% |
막대 N개를 가지고 있다. 이 막대를 이용해 만들 수 있는 가장 큰 직사각형의 넓이를 구하는 프로그램을 작성하시오.
막대는 이어 붙일 수 있고, 조각낼 수는 없다. 예를 들어, 길이가 2인 막대와 3인 막대를 합쳐 5인 막대를 만들 수 있다.
예를 들어, 가지고 있는 막대의 길이가 1, 3, 3, 4, 5, 7라면, 3 두 개와 5, 그리고 1과 4를 붙여 5를 만들면 3×5 크기의 직사각형을 만들 수 있다.
첫째 줄에 막대의 개수 N이 주어진다. N은 4보다 크거나 같고, 16보다 작거나 같은 자연수이다.
둘째 줄에 막대의 길이가 공백을 사이에 두고 주어진다. 막대의 길이는 10보다 작거나 같은 자연수이다.
첫째 줄에 만들 수 있는 가장 큰 직사각형의 넓이를 출력한다. 만약 주어진 막대를 이용해서 직사각형을 만들 수 없으면 -1을 출력한다.
6 1 3 3 4 5 7
15
6 9 9 5 6 2 10
-1
7 3 4 7 8 10 2 9
70
9 9 2 7 9 4 9 7 10 3
224
16 9 9 10 7 7 8 7 5 8 6 9 7 7 10 9 6
961
13 2 6 4 10 2 8 1 8 2 1 4 8 10
272