QOJ.ac

QOJ

Límite de tiempo: 1 s Límite de memoria: 1024 MB Puntuación total: 100 Hackeable ✓

#16892. 半导体制造

Estadísticas

한별이는 졸업하기 전에 전국 대학생 프로그래밍 대회 동아리 연합에 들어올 후배들을 위해 직접 만든 반도체 몇 개를 기부하려고 한다. 이때 반도체를 최대한 많이 만들기 위해서 반도체 하나를 만드는 데 드는 비용을 최소화하려고 한다.

반도체는 정점이 $N$개, 간선이 $M$개인 방향 그래프 형태를 하고 있다. 각 정점에는 1번부터 $N$번까지의 번호가 붙어 있으며, $i$번 정점은 퍼텐셜 에너지 $E_i$를 가지고 있다. 퍼텐셜 에너지는 실수 값을 가지며, $E_1 = 1.0$, $E_N = -1.0$로 고정되어 있고 나머지 정점의 퍼텐셜 에너지는 한별이가 임의로 정할 수 있다. 덧붙여 1번 정점과 $N$번 정점은 특수한 정점이기에 1번 정점으로 들어오는 간선과 $N$번 정점에서 나가는 간선은 존재하지 않는다.

반도체를 구성하고 있는 간선 $e = (u, v)$은 정점 $u$에서 $v$로 양의 에너지와 음의 에너지를 각각 전달할 수 있다. 반도체의 각 간선은 에너지 전달 효율이라는 값을 가지고 있다. 만약 한별이가 양의 에너지 전달 효율이 $a_e (\ge 0)$, 음의 에너지 전달 효율이 $b_e (\ge 0)$인 간선에 양의 에너지를 양의 실수 $p_e (\ge 0)$, 음의 에너지를 음의 실수 $m_e (\le 0)$만큼 보낸다면, 간선이 전달하는 에너지의 양은 $(a_e p_e + b_e m_e)$가 된다. 다만, 간선 $e = (u, v)$에 보내는 에너지가 $p_{(u,v)} + m_{(u,v)} \ge E_u - E_v$를 만족하지 않으면 과부하로 반도체가 고장날 수 있다.

반도체의 제작 비용은 반도체를 구성하는 각 간선이 전달하는 에너지의 총합과 같다. 좋은 일을 하려는 한별이를 도와, 반도체의 각 정점의 퍼텐셜 에너지와 각 간선에 보내는 에너지의 양을 적절히 조절해 반도체가 고장나지 않으면서 제작 비용이 최소가 되도록 해 보자.

입력 형식

첫 번째 줄에는 정점 개수 $N$과 간선 개수 $M$이 공백으로 구분되어 주어진다. ($3 \le N \le 500$; $1 \le M \le N(N - 1)$)

두 번째 줄부터 총 $M$개의 줄에 걸쳐서 반도체를 구성하고 있는 간선 정보가 공백으로 구분되어 4개의 정수 $u, v, a, b$로 주어진다. 이는 $u$번째 정점에서 $v$번째 정점으로 향하고 양의 에너지 전달 효율이 $a$, 음의 에너지 전달 효율이 $b$인 간선이 있음을 의미한다. 중복 간선이 있는 입력은 주어지지 않는다. ($1 \le u, v \le N$; $u \neq v$; $0 \le a, b \le 10^9$)

출력 형식

반도체 하나의 제작 비용의 최솟값을 출력하자. 단, 제작 비용이 $-3 \times 10^{-9}$보다 작아질 수 있다면, 반도체를 생산할 때마다 돈을 얻을 수 있는 한별이의 기분을 표현하는 단어인 HAPPY를 출력하자. 절대/상대 오차는 $10^{-9}$까지 허용되며, 답이 $-3 \times 10^{-9}$ 이상 $-1 \times 10^{-9}$ 미만인 입력은 주어지지 않는다.

样例

样例 1

3 2
1 2 4 2
2 3 2 1
4.00

样例 2

3 2
1 2 2 4
2 3 1 2
HAPPY

说明

예제 1은 $p_{1,2} = 0.0, m_{1,2} = 0.0, p_{2,3} = 2.0, m_{2,3} = 0.0, E_2 = 1.0$로 지정한다면, $p_{1,2} + m_{1,2} = 0.0 \ge E_1 - E_2 = 0.0$, $p_{2,3} + m_{2,3} = 2.0 \ge E_2 - E_3 = 2.0$를 만족하게 된다. 비용은 $4.0$이 되며, 이 이상으로 비용을 줄일 수 없다.

예제 2는 $p_{1,2} = 3.0, m_{1,2} = -2.0, p_{2,3} = 3.0, m_{2,3} = -2.0, E_2 = 0.0$로 지정한다면, $p_{1,2} + m_{1,2} = 1.0 \ge E_1 - E_2 = 1.0$, $p_{2,3} + m_{2,3} = 1.0 \ge E_2 - E_3 = 1.0$를 만족하게 된다. 비용은 $-3.0$이 되며, 제작 비용이 음수가 될 수 있기에 한별이는 매우 행복해진다.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.