우주 비상 사태 (작은 입력)

시간 제한5초메모리 제한512 MB

요약
0번 별에서 N번 별까지 순서대로 이동하는 기함을 위해 최대 두 별에 시각 t에 완성되는 부스터를 배치해 도착 시각을 가장 이르게 합니다.
난이도

보통10점 중 5점

유형
완전 탐색, 시뮬레이션
정답자
아직 제출이 없습니다

문제

우주에서 비상 사태가 일어났다. 함대의 기함을 별 0에서 별 NN까지 최대한 빨리 보내야 한다. 기함은 중간의 별을 번호가 커지는 순서대로 모두 거쳐 간다. 즉 0, 1, 2, 순서로 NN까지 이동한다. 기함의 평소 속도는 시간당 0.5파섹이다.

기함을 보내는 것과 별개로, 서로 다른 별에 가속기를 최대 LL개까지 세우라고 기술진에게 지시할 수 있다. 가속기 하나를 세우는 데 tt시간이 걸리고, LL개를 모두 동시에 세운다. 가속기가 완성된 별에서 다음 별로 이동하는 동안 기함의 속도는 시간당 1파섹이 된다.

기함이 어떤 별에서 다음 별로 이동하는 도중에 그 별의 가속기가 완성되면, 기함은 완성되는 순간부터 빨라진다.

기함이 별 NN에 가장 빨리 닿도록 가속기를 세울 때, 도착까지 걸리는 시간은 몇 시간인가?

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다. 이어서 TT개의 줄이 주어진다. 각 줄에는 정수 LL, tt, NN, CC와 CC개의 정수 aia_i가 공백으로 구분되어 주어진다. aia_i는 별 k×C+ik \times C + i와 별 k×C+i+1k \times C + i + 1 사이의 거리이고, 단위는 파섹이며, 모든 정수 kk에 대해 같은 값이 반복된다.

예를 들어 N=8N = 8, C=3C = 3, a0=3a_0 = 3, a1=5a_1 = 5, a2=4a_2 = 4이면 별 사이의 거리는 차례대로 [3, 5, 4, 3, 5, 4, 3, 5]이다.

제한

  • 1≤T≤1001 \le T \le 100
  • 1≤C≤10001 \le C \le 1000
  • C≤NC \le N
  • 1≤ai≤1041 \le a_i \le 10^4
  • 0≤t≤10110 \le t \le 10^{11}
  • tt는 짝수이다
  • 1≤N≤10001 \le N \le 1000
  • 0≤L≤20 \le L \le 2

출력

각 테스트 케이스마다 Case #x: y 형식으로 한 줄씩 출력한다. xx는 1부터 시작하는 테스트 케이스 번호이고, yy는 별 NN에 닿기까지 걸리는 시간이다. 답은 항상 정수임이 보장된다.

설명

L=1L = 1, t=4t = 4, N=2N = 2이고 별 사이의 거리가 [10, 4]인 경우를 보자. 가속기를 별 0에 세운다. 4시간이 지나면 기함은 2파섹을 갔고 가속기가 완성된다. 남은 8파섹을 시간당 1파섹으로 8시간 만에 지나 별 1에 닿고, 별 1에는 가속기가 없으므로 4파섹을 다시 8시간에 지나 목적지인 별 2에 닿는다. 모두 합쳐 20시간이 걸린다.

이 문제의 우주에서 빛의 속도는 시간당 1파섹보다 훨씬 빠르므로 특수 상대성 효과는 생각하지 않아도 된다.

예제5

  1. 예제 1

    입력
    2
    2 20 8 2 3 5
    1 4 2 2 10 4
    
    예상 출력
    Case #1: 54
    Case #2: 20
    
  2. 예제 2

    입력
    3
    0 0 5 1 7
    0 100000000000 1000 3 1 2 3
    0 2 4 2 6 6
    
    예상 출력
    Case #1: 70
    Case #2: 3998
    Case #3: 48
    
  3. 예제 3

    입력
    4
    1 0 5 1 7
    2 0 5 1 7
    2 0 3 3 4 9 2
    1 0 1 1 10000
    
    예상 출력
    Case #1: 63
    Case #2: 56
    Case #3: 17
    Case #4: 10000
    
  4. 예제 4

    입력
    4
    2 16 4 2 3 5
    2 14 4 2 3 5
    1 6 4 2 3 5
    2 0 4 2 3 5
    
    예상 출력
    Case #1: 24
    Case #2: 24
    Case #3: 27
    Case #4: 22
    
  5. 예제 5

    입력
    3
    1 12 6 6 5 4 3 2 1 6
    2 12 6 6 5 4 3 2 1 6
    2 40 6 6 5 4 3 2 1 6
    
    예상 출력
    Case #1: 36
    Case #2: 33
    Case #3: 41