树和图的测试

孪生蜘蛛 (spider.pas)
在G城保卫战中,超级孪生蜘蛛Phantom001和Phantom002作为第三层防卫被派往守护内城南端一带极为隐秘的通道。
根据防护中心的消息,敌方已经有一只特种飞蛾避过第二层防卫,直逼内城南端通道入口。但优秀的蜘蛛已经在每个通道内埋下了坚固的大网,无论飞蛾进入哪个通道,他只有死路一条!(因为他是无法挣脱超级蛛网的)
现在,001和002分别驻扎在某两个通道内。各通道通过内线相通,通过每条内线需要一定的时间。当特种飞蛾被困某处,001或002会迅速赶来把它结果掉(当然是耗时最少的那个)。
001跟002都想尽早的完成任务,他们希望选择在最坏情况下能尽早完成任务的方案。
输入:
第一行为一个整数N (N<=100) 表示通道数目。
接下来若干行每行三个正整数a,b,t 表示通道a,b有内线相连,通过的时间为t。(t<=100)
(输入保证每个通道都直接/间接连通)
输出:
两个不同的整数x1,x2,分别为001,002驻扎的地点。(如果有多解,请输出x1最小的方案,x1相同则输出x2最小的方案)
样例:
spider.in
3
1 2 5
2 3 10
3 1 3
spider.out
1 2

截断通路 (sever.pas)
苏联在天才总书记天凯的带领下,迅速发展,一片欣欣向荣之势。
经过一个星期的努力,苏联已经兴建起了n多道路,这使得想对其进行轰炸的美帝国感到十分的不爽。好战的美帝国头头LYNN制定了初步的攻击计划:切断苏联两个重镇之间的联系(也就是使这两城之间没有通路)。他们掌握了苏联道路的准确情况,并估算出轰炸一条道路所需的耗费。
现在,请你计算出切断s,t两城之间联系的最少耗费。(双向边)
输入:
第一行包含三个整数,分别为N,S,T。(N<=100)
接下来的若干行每行包含三个正整数a,b,c。分别表示城市a,b之间有道路相连,摧毁这条道路的耗费为c (c<=100)。

输出:
一个整数:最少耗费。
样例:
sever.in
3 1 3
1 2 1
2 3 2
sever.out
1

探案第二部 (holmes.pas)
我们伟大的 Sherlock&#8226;Holmes 先生最近遇上了一件相当棘手的案子,随着对案情逐渐深入的研究,他开始意识到:此案地域横跨欧洲,而起因可以追溯到50年前!为了尽快搜集各方面的线索,他决定与Dr. Watson分头行动。
Holmes列出了若干需要的线索:某处的一些雪茄烟灰;地下室油画上的颜料的呈色;Black兄弟与他们邻里的联系……诸如此类。而搜集这些线索需要一定的时间。不过,有些线索是相关联的,即在得到某个线索的时候,一并可以得出其他结论(我们可以认为这是不需要时间的)
    请充分相信Holmes先生!他无比敏锐的思维足够将所有线索串联,以完美的推理侦破这件名噪一时的大案!

输入:
第一行为N,表示N个需要搜集的线索(N<=1000)
接下来N行,每行两个整数ai,bi, 分别表示Holmes,Watson搜集第i个线索所需要的时间。(ai,bi<=15)
接下来若干行,每行两个整数x,y,表示得到x, 同时能够得到y。

输出:
一个整数,即搜集所有线索的最小耗时。

样例:
holmes.in
2
5 6
3 9
1 2
holmes.out
5