시간 제한
메모리 제한
시간 제한
2초
메모리 제한
128 MB
영훈이는 서로 다른 N개의 스티커 중 일부를 가지고 있다. 스티커는 0번부터 N-1번까지 번호가 매겨져 있으며, 각 스티커는 하나씩만 존재한다. 각 스티커에는 가격과 가치가 주어진다.
영훈이는 가진 스티커를 팔거나, 가지고 있지 않은 스티커를 살 수 있다. 이 과정을 원하는 만큼 반복한 뒤, 가지고 있는 스티커들의 가치 합이 적어도 K가 되도록 하려 한다.
처음에 필요한 돈의 최솟값을 구하라. 어떤 방법으로도 가치 합을 K 이상으로 만들 수 없다면 -1을 출력한다.
첫째 줄에 스티커의 개수 N이 주어진다. N은 32 이하의 자연수이다.
둘째 줄에는 각 스티커의 가격이 주어진다.
셋째 줄에는 각 스티커의 가치가 주어진다.
넷째 줄에는 정수 K가 주어진다.
다섯째 줄에는 영훈이가 처음에 가지고 있는 스티커의 개수가 주어진다.
여섯째 줄에는 영훈이가 처음에 가지고 있는 스티커의 번호가 주어진다. 처음에 가지고 있는 스티커의 수가 0이면 여섯째 줄은 주어지지 않는다.
가격은 30,000,000 이하의 자연수이다. 처음에 가지고 있는 스티커의 개수는 0 이상 N 이하의 정수이다. K는 0 이상 1,000,000,000 이하의 정수이다. 가치는 1 이상 30,000,000 이하의 정수이다.
필요한 초기 금액의 최솟값을 출력한다. 불가능하면 -1을 출력한다.