보디빌딩
시간 제한1초메모리 제한512 MB
매일 B_i kg이 늘고 루틴 한 번마다 X kg이 빠질 때, 매일 최종 몸무게가 A_i 이상이 되도록 루틴을 최대로 몇 번 할 수 있는지 구한다.
문제
건표는 헬스를 좋아하는 사람이다. 건표는 자신만의 운동 루틴이 있다. 건표는 이 루틴을 진행할 때마다 몸무게가 kg만큼 빠졌다. 건표는 하루에 몇 번이고 이 루틴을 진행할 수 있었다.
건표는 장차 있을 보디빌딩 대회를 위해 일에 걸쳐 식단을 짜놓았다. 이 계획에 의하면 번째 날에는 건표의 몸무게가 kg만큼 찐다. 다만, 건표가 운동을 하다가 쓰러지면 안 되기 때문에 번째 날에 최종 몸무게가 최소 kg 이상이 되길 원했다. 만약 건표가 너무 많이 운동을 하거나 너무 적게 음식을 먹어서 그날에 최종적으로 kg보다 적은 몸무게를 가진다면, 건표는 그 자리에서 쓰러진다. 건표는 보디빌딩 대회에서 우승하기 위해 루틴을 최대한 많이 진행하여 최대한 건강한 몸을 만들고 싶었다. 건표가 쓰러지지 않는 선에서 이 루틴을 최대 몇 번까지 진행할 수 있는지 구하여라.
입력
첫째 줄에는 두 정수 과 가 주어진다. 은 보디빌딩 대회까지 남은 일수. 는 루틴을 진행할 때마다 빠지는 몸무게(kg)이다.
둘째 줄에는 개의 정수 가 주어진다. 번째 정수 는 번째 날 최종 몸무게의 하한을 의미한다.
셋째 줄에는 개의 정수 가 주어진다. 번째 정수 는 번째 날에 늘어나는 몸무게를 나타낸다.
출력
첫째 줄에 건표가 쓰러지지 않고 진행할 수 있는 최대 루틴 수를 출력한다.
만약 어떻게 하더라도 일 이내에 건표가 쓰러진다면 -1을 출력하라.