열사병
시간 제한2초메모리 제한1024 MB
직선 위 병원의 수용량과 도로별 환자 발생 순서가 주어질 때, 양쪽 병원이 모두 찬 상태에서 헬기로 이송되는 환자 수의 최댓값을 구합니다.
문제
JOI 섬은 서쪽에서 동쪽으로 1번부터 번까지 번호가 매겨진 개의 구역으로 이루어져 있다. 섬에는 1번부터 번까지 번호가 매겨진 개의 도로가 있으며, 도로 ()는 구역 와 을 양방향으로 잇는다.

JOI 섬에서 국제정보올림피아드(IOI 20XX)가 열릴 예정이다. 이 섬은 極심한 더위로 유명하다. 더위에 익숙하지 않은 외국 참가자는 열사병에 걸릴 위험이 크다. 그래서 주최 측은 다음 조치를 마련했다.
- 먼저 각 ()에 대해 구역 에 수용 인원이 명인 병원을 하나씩 준비한다. 인 병원도 있다.
- 대회 중 도로 ()에서 열사병 환자가 발생하면 다음 절차로 병원에 보낸다.
- 구역 또는 구역 의 병원 중 자리가 남아 있는 곳으로 보낸다. 두 병원에 모두 자리가 있으면 어느 쪽을 선택해도 된다. 두 병원이 모두 가득 찼다면 섬 밖의 일반 병원으로 헬리콥터를 이용해 보낸다.
헬리콥터 이용에는 비용이 많이 들기 때문에, 주최 측은 헬리콥터로 보내야 하는 환자 수의 최댓값을 알고 싶어 한다. 시나리오는 다음과 같다.
- 대회 전에는 어느 병원에도 환자가 없다.
- 대회 중 명이 열사병에 걸린다. 번째 () 환자는 도로 에서 발생한다.
- 각 ()에 대해, 번째 환자가 발생할 때 1번째부터 번째까지의 환자는 이미 병원에 보내져 있다. 증상이 심하므로 대회 중에 병원을 떠나는 환자는 없다.
구역 수, 병원 정보, 환자 정보가 주어질 때, 위 시나리오에서 헬리콥터로 보내는 환자 수의 최댓값을 계산하는 프로그램을 작성하라.
입력
표준 입력에서 다음 데이터를 읽는다.
L
C_1 C_2 ... C_L
N
X_1 X_2 ... X_N
출력
표준 출력에 헬리콥터로 보내는 환자 수의 최댓값을 한 줄로 출력한다.
제한
- .
- ().
- .
- ().
- 주어지는 값은 모두 정수이다.