编程题
最小割 ### 题目描述 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≤10^5)$。 注意:两个中转站之间可能有多条道路直接相连。 同一行相邻两数之间可能有一个或多个空格。 其中, $N \leq 4000,M \leq 60000$。 ### 输出描述 对每条单向边,按输入顺序,依次输出一行,包含两个非$0$即$1$的整数,分别表示对问题一和问题二的回答(其中输出$1$表示是,输出$0$表示否)。 同一行相邻两数之间用一个空格隔开,每行开头和末尾没有多余空格。 ### 输入输出样例 #### 示例 1 >输入 ```txt 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 ``` >输出 ```txt 1 0 1 0 0 0 1 0 0 0 1 0 1 0 ```
查看答案
赣ICP备20007335号-2