고속도로 순찰

시간 제한1초메모리 제한128 MB

요약
모든 고정 간선을 포함하고 최소 한 개를 순찰하며 각 정점에서 순찰 진입 차수와 진출 차수가 같도록 간선 부분집합을 골라 순찰 비용과 감시 비용의 합을 최소화한다.
난이도

어려움10점 중 8점

유형
그래프, 동적 계획법, 최단 경로, 그리디
정답자
아직 제출이 없습니다

문제

도시에는 NN개의 기지국이 있고, 이들을 잇는 MM개의 일방통행 고속도로가 있다. ii번 고속도로는 기지국 uiu_i에서 출발하여 기지국 viv_i에서 끝난다. 도시를 지키기 위해 모든 고속도로는 다음 두 방법 중 정확히 하나로 감시해야 한다.

  • 순찰한다. 비용은 pip_i이다.
  • 영상 감시 장비를 설치한다. 비용은 sis_i이다.

순찰 일정은 균형을 이루어야 한다. 즉, 모든 기지국에서 그 기지국을 출발하는 순찰 고속도로의 수와 그 기지국으로 들어오는 순찰 고속도로의 수가 같아야 한다. 다시 말해, 순찰하는 고속도로들의 집합은 순환(circulation)을 이루어야 하며, 각 기지국의 순찰 진출 차수와 진입 차수가 같아야 한다.

보안상의 이유로 반드시 순찰해야 하는 고속도로가 있다. xi=1x_i = 1이면 ii번 고속도로는 반드시 순찰해야 하고, xi=0x_i = 0이면 두 방법 중 어느 것을 사용해도 된다.

영상 감시가 순찰을 완전히 대체할 수는 없으므로, 적어도 하나의 고속도로는 반드시 순찰해야 한다.

가능한 최소 총 감시 비용을 구하여라. 유효한 일정이 존재하지 않으면 그 사실을 보고하여라.

입력

첫째 줄에 테스트 케이스의 수 TT (1≤T≤701 \le T \le 70)가 주어진다.

각 테스트 케이스의 첫째 줄에는 기지국의 수 NN과 고속도로의 수 MM (1≤N≤1001 \le N \le 100, 1≤M≤10001 \le M \le 1000)이 주어진다. 이어지는 MM개의 줄에는 각각 다섯 정수 uu, vv, pp, ss, xx (1≤u,v≤N1 \le u, v \le N, 0≤p,s≤10000000 \le p, s \le 1000000, x∈{0,1}x \in \{0, 1\})가 주어진다. 이는 기지국 uu에서 출발하여 기지국 vv에서 끝나는 고속도로로, 순찰 비용은 pp, 영상 감시 비용은 ss이며, 반드시 순찰해야 하면 x=1x = 1, 아니면 x=0x = 0이다.

출력

각 테스트 케이스마다 Case i: c 형식의 줄을 출력한다. 여기서 ii는 테스트 케이스 번호(11부터 시작)이고 cc는 최소 총 감시 비용이다. 유효한 일정이 존재하지 않으면 대신 Case i: impossible을 출력한다.

예제3

  1. 예제 1

    입력
    2
    4 5
    1 2 10 25 0
    2 3 10 5 0
    3 1 10 5 0
    2 4 10 5 0
    4 3 30 5 0
    4 5
    1 2 10 25 0
    2 3 10 5 0
    3 1 10 5 0
    2 4 10 5 0
    4 3 30 5 1
    
    예상 출력
    Case 1: 40
    Case 2: 65
    
  2. 예제 2

    입력
    1
    3 3
    1 2 1 10 0
    2 3 1 10 0
    3 1 1 10 0
    
    예상 출력
    Case 1: 3
    
  3. 예제 3

    입력
    1
    3 3
    1 2 10 1 0
    2 3 10 1 0
    3 1 10 1 0
    
    예상 출력
    Case 1: 30