P4126 [AHOI2009]最小割

    • 91通过
    • 293提交
  • 题目提供者 Created_equal1 管理员
  • 评测方式 云端评测
  • 标签 并查集 强连通分量,缩点 最小割 各省省选 2009 安徽
  • 难度 省选/NOI-
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 最新讨论 显示

    推荐的相关题目 显示

    题目描述

    A,B两个国家正在交战,其中A国的物资运输网中有 $N$ 个中转站, $M$ 条单向道路。设其中第 $i (1≤i≤M)$ 条道路连接了 $v_i,u_i$ 两个中转站,那么中转站 $v_i$ 可以通过该道路到达 $u_i$ 中转站,如果切断这条道路,需要代价 $c_i$ 。

    现在B国想找出一个路径切断方案,使中转站 $s$ 不能到达中转站 $t$ ,并且切断路径的代价之和最小。

    小可可一眼就看出,这是一个求最小割的问题。但爱思考的小可可并不局限于此。现在他对每条单向道路提出两个问题:

    • 问题一:是否存在一个最小代价路径切断方案,其中该道路被切断?
    • 问题二:是否对任何一个最小代价路径切断方案,都有该道路被切断?

    现在请你回答这两个问题。

    输入输出格式

    输入格式:

    第一行有 $4$ 个正整数,依次为 $N,M,s,t$ 。

    第 $2$ 行到第 $(M+1)$ 行每行 $3$ 个正整数 $v,u,c$ ,表示 $v$ 中转站到 $u$ 中转站之间有单向道路相连,单向道路的起点是 $v$ , 终点是 $u$ ,切断它的代价是 $c(1≤c≤100000)$ 。

    注意:两个中转站之间可能有多条道路直接相连。 同一行相邻两数之间可能有一个或多个空格。

    输出格式:

    对每条单向边,按输入顺序,依次输出一行,包含两个非 $0$ 即 $1$ 的整数,分别表示对问题一和问题二的回答(其中输出 $1$ 表示是,输出 $0$ 表示否)。 同一行相邻两数之间用一个空格隔开,每行开头和末尾没有多余空格。

    输入输出样例

    输入样例#1: 复制
    6 7 1 6
    1 2 3
    1 3 2
    2 4 4
    2 5 1
    3 5 5
    4 6 2
    5 6 3
    输出样例#1: 复制
    1 0
    1 0
    0 0
    1 0
    0 0
    1 0
    1 0

    说明

    设第 $(i+1)$ 行输入的边为 $i$ 号边,那么 $\{1,2\},\{6,7\},\{2,4,6\}$ 是仅有的三个最小代价切割方案。它们的并是 $\{1,2,4,6,7\}$ ,交是 $\{\varnothing \}$ 。

    测试数据规模如下表所示

    数据编号 N M 数据编号 N M
    1 10 50 6 1000 20000
    2 20 200 7 1000 40000
    3 200 2000 8 2000 50000
    4 200 2000 9 3000 60000
    5 1000 20000 10 4000 60000
    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。