학교 올림피아드
면접 대비시간 제한1초메모리 제한512 MB
좌표가 주어진 n명의 학생을 정원 제한이 있는 세 장소에 배정해 총 이동 거리의 최솟값을 구한다.
문제
내일 링랜드의 수도에서 정보 올림피아드가 열린다.
수도의 모든 집은 일직선으로 뻗은 메인 거리의 정수 좌표에 있다. 올림피아드는 메인 거리의 세 지점에서 열린다. 각 지점에는 참가할 수 있는 최대 인원 제한이 있다.
첫 번째 지점의 좌표는 이고 제한은 명이다. 두 번째 지점의 좌표는 이고 제한은 명이다. 세 번째 지점의 좌표는 이고 제한은 명이다.
올림피아드에 참가할 학생이 명 있고, 번째 학생은 좌표 에 있는 집에 산다. 주최자는 각 학생이 참가할 지점을 정해야 한다. 지점의 제한을 넘을 수 없다. 모든 학생이 참가할 수 있도록 전체 제한이 충분하다는 것이 보장된다.
어떤 학생이 좌표 에 살고 참가할 지점의 좌표가 라면, 올림피아드 전에 만큼 걸어야 한다. 학생을 세 지점에 최적으로 배정했을 때 학생들이 올림피아드 전에 걸어야 하는 총 거리의 최솟값을 구하시오.
입력
첫째 줄에는 두 정수 와 가 주어진다. 이는 첫 번째 지점의 좌표와 참가 제한이다. 둘째 줄에는 두 정수 와 가 주어진다. 이는 두 번째 지점의 좌표와 참가 제한이다. 셋째 줄에는 두 정수 와 가 주어진다. 이는 세 번째 지점의 좌표와 참가 제한이다 (; ).
넷째 줄에는 정수 이 주어진다. 이는 학생 수이다 (, ).
다음 줄에는 개의 정수 가 주어진다. 이는 학생들의 집 좌표이다 ().
출력
학생들이 올림피아드 전에 걸어야 하는 총 거리의 최솟값을 정수 하나로 출력한다.