온도 맞추기
시간 제한1초메모리 제한1024 MB
버튼을 누를 때마다 각 비커의 온도가 +Xi 또는 -Xi만큼 변하며, 모든 비커를 목표 온도 Bi로 만들기 위한 최소 버튼 횟수를 구하거나 불가능하면 -1을 출력한다.
문제
학교 실험실에 비커가 총 개가 있고, 각 비커에는 번부터 번까지 번호가 붙어있다. 번 비커의 초기 온도는 섭씨 도이다.
기현이는 화학 실험을 위해 실험실에 있는 모든 비커의 온도를 각각 정해진 값에 맞추어야 한다. 구체적으로, 번 비커의 온도를 목표 온도인 섭씨 도로 맞춰야 한다. 비커의 온도를 일일이 맞추기 귀찮았던 기현이는 편하게 온도를 조절할 수 있는 온도 조절 장치를 개발하였다!
온도 조절 장치는 버튼 하나로만 되어 있으며, 버튼을 한 번 누를 경우 아래와 같이 동작한다.
- 모든 에 대해, 번 비커의 온도를 도 올리거나 내린다. 비커마다 온도를 올릴지 내릴지를 기현이가 선택할 수 있으나, 온도를 그대로 유지하는 것은 불가능하다. 는 비커마다 사전에 정해진 온도 변화 수치이며, 이 값은 변하지 않는다.
온도 조절 장치가 한 번 동작하는 데는 시간이 걸리므로, 기현이는 온도 조절 장치의 버튼을 최소 횟수로 눌러서 모든 비커의 온도를 목표 온도로 맞추고 싶다.
비커의 개수와 각 비커의 초기 온도, 목표 온도, 온도 변화 수치가 주어졌을 때, 기현이가 비커들의 온도를 모두 맞추려면 버튼을 최소 몇 번 눌러야 하는지 구하여라.
온도 조절 장치만으로 모든 비커의 온도를 원하는 값에 맞추는 것이 불가능할 수도 있으므로, 이런 경우 역시 구별하여야 한다.
입력
첫 번째 줄에 비커의 개수 이 주어진다. ()
두 번째 줄에는 각 비커의 초기 온도를 나타내는 개의 정수 이 공백으로 구분되어 주어진다. ()
세 번째 줄에는 각 비커의 목표 온도를 나타내는 개의 정수 이 공백으로 구분되어 주어진다. ()
네 번째 줄에는 각 비커의 온도 변화 수치를 나타내는 개의 정수 이 공백으로 구분되어 주어진다. ()
출력
첫 번째 줄에 모든 비커의 온도를 목표 온도로 맞추기 위해 버튼을 누르는 최소 횟수를 출력한다.
만일 온도 조절 장치만으로 온도를 맞추는 것이 불가능하다면 -1을 대신 출력한다.