흑백 요리사
시간 제한1초메모리 제한1024 MB
두께가 1에서 25 사이인 스테이크 N개를 양면이 같은 횟수와 같은 시간만큼 익도록 굽는 최소 시간을 구합니다.
문제

성현이는 요리 경연에 출전했다가 다음과 같은 혹평을 들었다.
이 보섭살은 잘못 구워졌어요. 고기가 even 하게 익지 않았어요.
성현이는 다음 시즌 요리 경연에도 참여하기로 했고, 이번에는 고기를 even 하게 굽기로 했다. 그런데 even의 뜻을 잘못 이해한 성현이는 스테이크를 짝수 번 구우려고 한다. 즉, 각 스테이크의 앞면과 뒷면을 같은 횟수만큼, 그리고 한 번 이상 굽는다. 또한 양면이 같은 시간만큼 구워져야 한다.
두께 인 스테이크를 구우려면 한 면을 정확히 분 동안 구운 뒤 뒤집어야 한다. 분이 지나기 전에는 뒤집을 수 없고, 분이 지났는데도 뒤집지 않고 둘 수는 없다.
성현이는 분에 불판 위에 스테이크 개를 모두 올려 동시에 굽기 시작한다. 굽는 도중에는 스테이크를 불판에서 치울 수 없고, 굽기를 마칠 때는 개의 스테이크가 모두 even 하게 익어 있어야 한다.
고기를 너무 오래 구우면 질겨지므로, 성현이는 조건을 만족하면서 모든 스테이크를 가장 빨리 굽고 싶어 한다. 성현이는 몇 분 동안 스테이크를 구워야 할까?
입력
첫 번째 줄에 스테이크의 개수 이 주어진다.
두 번째 줄에 각 스테이크의 두께인 양의 정수 가 공백으로 구분되어 주어진다.
출력
성현이가 모든 스테이크를 even 하게 굽기 위해 필요한 최소 시간을 분 단위로 출력한다.
힌트
C/C++의 경우, 32bit 정수형 int의 범위를 넘어가는 정수를 다루게 되므로 64bit 정수형 long long 사용을 권장한다.