CF107A.Dorm Water Supply

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

The German University in Cairo (GUC) dorm houses are numbered from 11 to nn . Underground water pipes connect these houses together. Each pipe has certain direction (water can flow only in this direction and not vice versa), and diameter (which characterizes the maximal amount of water it can handle).

For each house, there is at most one pipe going into it and at most one pipe going out of it. With the new semester starting, GUC student and dorm resident, Lulu, wants to install tanks and taps at the dorms. For every house with an outgoing water pipe and without an incoming water pipe, Lulu should install a water tank at that house. For every house with an incoming water pipe and without an outgoing water pipe, Lulu should install a water tap at that house. Each tank house will convey water to all houses that have a sequence of pipes from the tank to it. Accordingly, each tap house will receive water originating from some tank house.

In order to avoid pipes from bursting one week later (like what happened last semester), Lulu also has to consider the diameter of the pipes. The amount of water each tank conveys should not exceed the diameter of the pipes connecting a tank to its corresponding tap. Lulu wants to find the maximal amount of water that can be safely conveyed from each tank to its corresponding tap.

输入格式

The first line contains two space-separated integers nn and pp (1<=n<=1000,0<=p<=n)(1<=n<=1000,0<=p<=n) — the number of houses and the number of pipes correspondingly.

Then pp lines follow — the description of pp pipes. The ii -th line contains three integers aia_{i} bib_{i} did_{i} , indicating a pipe of diameter did_{i} going from house aia_{i} to house bib_{i} ( 1<=ai,bi<=n,aibi,1<=di<=1061<=a_{i},b_{i}<=n,a_{i}≠b_{i},1<=d_{i}<=10^{6} ).

It is guaranteed that for each house there is at most one pipe going into it and at most one pipe going out of it.

输出格式

Print integer tt in the first line — the number of tank-tap pairs of houses.

For the next tt lines, print 3 integers per line, separated by spaces: tankitank_{i} , tapitap_{i} , and diameteridiameter_{i} , where tankitapitank_{i}≠tap_{i} ( 1<=i<=t1<=i<=t ). Here tankitank_{i} and tapitap_{i} are indexes of tank and tap houses respectively, and diameteridiameter_{i} is the maximum amount of water that can be conveyed. All the tt lines should be ordered (increasingly) by tankitank_{i} .

输入输出样例

  • 输入#1

    3 2
    1 2 10
    2 3 20
    

    输出#1

    1
    1 3 10
    
  • 输入#2

    3 3
    1 2 20
    2 3 10
    3 1 5
    

    输出#2

    0
    
  • 输入#3

    4 2
    1 2 60
    3 4 50
    

    输出#3

    2
    1 2 60
    3 4 50
    
首页