실행 시간 제한 | 메모리 제한 |
---|---|
2 초 | 1024 MB |
민지는 최근 오프라인 수업으로 돌아왔는데, 불행히도 선생님의 강의는 매우 지루해서 자주 졸곤 합니다.
선생님은 민지가 수업에서 주의를 기울이지 않는 것을 알아챘습니다. 그래서 수업에 있는 다른 학생, 지은에게 민지가 수업에서 몇 번이나 잠들었는지 기록하라고 했습니다. 총 개의 수업 기간이 있으며, 지은은 번째 수업 기간에 민지가 번 잠들었다고 기록했습니다. 모든 수업 기간 동안 민지가 잠든 총 횟수는 최대 입니다.
지은은 민지와 경쟁심을 느끼며, 선생님에게 민지가 매번 같은 횟수로 수업에서 자는 것처럼 보이게 하려고 합니다. 이렇게 하면 문제가 전적으로 민지 때문인 것처럼 보이게 됩니다.
지은이 기록을 수정할 수 있는 유일한 방법은 인접한 두 수업 기간을 합치거나 한 수업 기간을 두 개로 나누는 것입니다. 예를 들면, 라면 지은이 두 번째와 세 번째 수업 기간을 합치면 기록은 가 됩니다. 그 다음 세 번째 수업 기간을 두 개로 나누면 기록은 , , , , 중 하나가 될 수 있습니다.
민지가 가장 좋아하지 않는 숫자에 대한 개의 후보 가 주어질 때, 각각의 후보에 대해 지은이가 기록의 모든 항목을 로 변환하기 위해 필요한 최소 수정 횟수를 계산해주세요.
각 테스트 케이스의 첫 번째 줄에는 이 포함되어 있고, 두 번째 줄에는 이 포함되어 있습니다. 세 번째 줄에는 가 있고, 그 다음 개의 줄에는 각각 가 포함되어 있습니다.
각 q_i에 대해, 지은이가 모든 항목을 로 변환하기 위해 필요한 최소 수정 횟수를 계산해주세요.
불가능한 경우 -1을 출력합니다.
6 1 2 3 1 1 4 7 1 2 3 4 5 6 12
6 6 4 5 -1 4 5
1 2 3 1 1 4
-> 3 3 1 1 4 : 첫 번째와 두 번째 수업을 합침
-> 3 3 1 5: 네 번째와 다섯 번째 수업을 합침
-> 3 3 6: 세 번째와 네 번째 수업을 합침
-> 3 3 3 3: 6을 3과 3으로 분할
2. 지은이가 모든 항목을 5로 변환하는 것은 불가능하므로, 그 후보에 대한 올바른 출력값은 -1입니다.
점수:
출처: USACO 2022 February Contest, Platinum Problem 2. Sleeping in Class