만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

마법의 던전

면접 대비

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

요약
아서가 시작 방 s에서 몬스터의 방 t까지 가는 동안 체력이 0 이하로 떨어지지 않게 하면서, 도착했을 때 가능한 최대 체력을 구합니다.
난이도

보통10점 중 6점

유형
최단 경로, 그래프
정답자
아직 제출이 없습니다

문제

아서 C. 말로리는 (게임 세계에서) 떠돌아다니는 용감한 전사다.

어느 날 그는 작은 마을을 방문해 하룻밤을 묵었다. 다음 날 아침 마을 촌장이 그를 찾아왔다. 촌장은 괴물이 마을을 위협하고 있으니 처치해 달라고 부탁했다. 그는 마음이 넓은 사람이라 마을을 구하는 일을 돕기로 했다.

촌장은 괴물이 서쪽에서 온 것 같다고 했다. 그래서 그는 마을 서쪽 숲을 지나 수상한 동굴을 찾아냈다. 놀랍게도 동굴 안에는 깊은 던전이 있었다. 그는 이 동굴이 괴물의 소굴이라고 확신했다.

다행히 입구에서 던전 지도를 받았다. 지도에 따르면 괴물은 던전 깊숙한 곳에 있다. 던전에는 길로 이어진 방이 많다. 모든 길은 일방통행이며 마법의 힘이 가득하다. 마법의 힘은 그가 길을 지날 때 체력을 회복시키거나 피해를 준다.

그가 견딜 수 있는 피해의 양은 체력으로 나타낸다. 그는 처음에 최대 체력 상태로 출발하며, 체력을 모두 잃으면 죽는다. 죽은 사람은 움직이거나 싸울 수 없으므로, 죽으면 임무는 실패다. 반면 회복 길을 지나면 최대 체력까지 체력을 회복할 수 있다. 회복하거나 피해를 입는 양은 지도에 표시되어 있다.

이제 그는 최상의 상태로 괴물과 싸우려 한다. 당신의 일은 그가 괴물의 방에 들어갈 때 체력을 최대한 높이는 것이다. 괴물의 방에 도착하면 반드시 바로 싸워야 한다. 돌아오는 길은 신경 쓰지 않아도 된다. 던전을 빠져나갈 마법 두루마리가 그에게 있기 때문이다.

입력

입력은 여러 개의 테스트 케이스로 이루어진다.

각 테스트 케이스의 첫 줄에는 두 정수 NN (2≤N≤1002 \le N \le 100)과 MM (1≤M≤10001 \le M \le 1000)이 주어진다. NN은 방의 개수, MM은 길의 개수다. 방은 00부터 N−1N-1까지 번호가 붙어 있다. 이어지는 MM개의 줄에는 정수 fif_i, tit_i, wiw_i (∣wi∣≤107|w_i| \le 10^7)가 주어진다. 이는 방 fif_i에서 방 tit_i로 가는 길을 뜻한다. wiw_i는 아서의 체력에 주는 영향이다. 양수이면 체력을 회복하고, 음수이면 체력을 잃는다. 테스트 케이스의 마지막 줄에는 세 정수 ss, tt, HH (0<H≤1070 < H \le 10^7)가 주어진다. ss는 던전의 입구 방, tt는 괴물의 방, HH는 아서의 최대 체력이다. ss와 tt는 서로 다르지만, fif_i와 tit_i는 같을 수 있다.

입력의 마지막은 0 두 개가 한 줄에 주어지는 것으로 끝난다.

출력

각 테스트 케이스마다 테스트 케이스 번호(1부터 시작)와, 아서가 괴물의 방에 들어갈 때 가질 수 있는 최대 체력을 한 줄에 출력한다. 괴물과 싸울 수 없으면 테스트 케이스 번호와 "GAME OVER"를 출력한다.

예제1

  1. 예제 1

    입력
    7 8
    0 2 3
    2 3 -20
    3 4 3
    4 1 -5
    1 5 1
    5 4 5
    1 3 2
    3 6 -2
    0 6 30
    7 8
    0 2 3
    2 3 -20
    3 4 3
    4 1 -5
    1 5 1
    5 4 5
    1 3 2
    3 6 -2
    0 6 20
    4 4
    0 1 -10
    1 2 -50
    2 1 51
    1 3 1
    0 3 20
    11 14
    0 1 -49
    1 2 1
    2 3 40
    3 1 -40
    1 4 -9
    4 5 40
    5 1 -30
    1 6 -19
    6 7 40
    7 1 -20
    1 8 -30
    8 9 40
    9 1 -9
    1 10 1
    0 10 50
    3 4
    0 1 -49
    1 2 10
    2 0 50
    2 1 10
    0 1 50
    0 0
    
    예상 출력
    Case 1: 25
    Case 2: GAME OVER
    Case 3: 11
    Case 4: 31
    Case 5: 1