특수 능력 2
시간 제한2초메모리 제한512 MB
가중치가 있는 유향 그래프에서 1번 정점에서 N번 정점으로 가는 경로 중, 최대 C번의 간선 가중치 부호 반전을 사용해 얻을 수 있는 최소 비용을 구한다.
문제
개의 정점과 개의 간선으로 이루어진 방향 그래프가 있다. 정점에는 1번부터 번까지 번호가 붙어 있고, 각 간선에는 0 이상의 정수 가중치가 있다. 두 정점 사이에 간선이 여러 개 있을 수도 있고, 시작점과 도착점이 같은 간선이 있을 수도 있다.
성원이는 지금 1번 정점에 있다. 간선을 따라 다른 정점으로 이동하며, 간선 하나를 지나는 비용은 그 간선의 가중치다.
성원이에게는 특수 능력이 있다. 간선을 지날 때 이 능력을 쓰면 그 간선의 가중치에 -1을 곱한 값이 그 번의 비용이 된다. 능력은 최대 번 쓸 수 있고, 한 번 쓸 때 간선 하나를 지나는 데만 적용된다. 같은 간선을 여러 번 지나도 되고, 지날 때마다 능력을 다시 쓸 수 있다. 능력을 쓸 횟수가 남은 채로 번 정점에 도착해도 된다.
성원이가 1번 정점에서 출발해 번 정점에 도착하는 최소 비용을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 정점의 개수 , 간선의 개수 , 특수 능력을 쓸 수 있는 횟수 가 주어진다. (, , )
둘째 줄부터 개의 줄에 간선 하나의 정보 , , 가 주어진다. (, , ) 은 간선의 시작점, 는 간선의 도착점이고, 이 간선은 에서 방향으로만 지날 수 있다.
1번 정점에서 번 정점으로 갈 수 있는 그래프만 입력으로 주어진다.
출력
첫째 줄에 성원이가 1번 정점에서 번 정점까지 이동하는 최소 비용을 출력한다.