프라이빗 스페이스

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

사람들은 그룹 단위로(혼자 오는 사람도 있습니다) 영화관에 옵니다. 각 그룹은 자신의 그룹 안에서만 어울리고 싶어 하므로, 같은 줄에 앉은 다른 그룹과의 사이에 최소 한 자리 이상의 빈 좌석을 두려고 합니다. 다만 그룹이 줄의 양쪽 끝 중 한쪽에 앉는 경우에는 그쪽으로는 빈 좌석이 필요하지 않습니다.

영화관은 삼각형 모양입니다. 가장 넓은 줄의 좌석 수가 $X$이면, 각 줄의 좌석 수는 $X, X-1, X-2, \dots, 1$로 한 자리씩 줄어듭니다(폭이 $X$부터 $1$까지인 줄이 각각 하나씩 있습니다). 수용 한계 때문에 가장 넓은 줄의 좌석 수는 최대 $12$입니다.

방문객은 목록 $(N_1, \dots, N_n)$으로 주어집니다. $N_i$는 정확히 $i$명으로 이루어진 그룹의 개수입니다. 모든 그룹은 한 줄 안에 앉아야 하며(그룹을 여러 줄로 나눌 수 없습니다), 그룹이 차지하는 좌석은 서로 연속해야 합니다.

위의 '한 자리 이상 비우기' 규칙을 지키면서 모든 그룹을 동시에 앉힐 수 있는, 가장 넓은 줄의 최소 폭 $X$를 구하세요.

입력

첫째 줄에 정수 $n$ ($1 \le n \le 12$)이 주어집니다. 이는 그룹이 가질 수 있는 최대 인원수입니다.

둘째 줄에 $n$개의 정수가 주어집니다. 그중 $i$번째(1부터 시작) 정수는 정확히 $i$명으로 이루어진 그룹의 개수 $N_i$입니다.

출력

모든 그룹을 앉힐 수 있는 가장 넓은 줄의 최소 폭 $X$를 한 줄에 출력합니다. $1$부터 $12$까지 어떤 폭으로도 모든 그룹을 앉힐 수 없다면 대신 impossible을 출력합니다.