갱스터
시간 제한1초메모리 제한128 MB
문 열림 상태가 단위 시간당 1 이하로 변하는 규칙 아래, 0에서 시작해 각 갱스터의 도착 시각에 그의 뚱뚱함과 상태가 일치하도록 조절해 얻는 총 재산의 최댓값을 구한다.
문제
명의 갱스터가 식당에 가려고 한다. 번째 갱스터는 시각 에 도착하며, 이득 를 가진다. 식당 문은 범위의 정수로 표현되는 가지 열림 상태를 가진다. 열림 상태는 단위 시간마다 만큼만 변할 수 있다. 즉, 만큼 더 열리거나, 만큼 더 닫히거나, 그대로 유지된다. 처음 시각에 문은 닫혀 있다(상태 ).
번째 갱스터는 문이 자신을 위해 특별히 열려 있을 때에만, 즉 열림 상태가 자신의 완고함 와 정확히 일치할 때에만 식당에 들어간다. 갱스터가 도착한 시각에 열림 상태가 그의 와 다르면, 그 갱스터는 떠나고 다시는 돌아오지 않는다.
식당은 시간 구간 동안 영업한다.
문을 적절히 여닫아서 식당에 모인 갱스터들의 이득 총합을 최대로 만드는 것이 목표이다.
입력
첫째 줄에 공백으로 구분된 세 정수 , , 가 주어진다. (, , )
둘째 줄에 각 갱스터가 도착하는 시각 이 공백으로 구분되어 주어진다. (, )
셋째 줄에 각 갱스터의 이득 이 공백으로 구분되어 주어진다. (, )
넷째 줄에 각 갱스터의 완고함 이 공백으로 구분되어 주어진다. (, )
입력의 모든 값은 정수이다.
출력
식당에 모인 갱스터들의 이득의 최대 합을 정수 하나로 출력한다. 어떤 갱스터도 식당에 들어갈 수 없는 경우에는 을 출력한다.