幸运的是,没有篱笆连接它自身。
对于一组有关篱笆如何分割牧场的数据,写一个程序来计算出所有分割出的区域中最小的周长。
例如,标号1~10的篱笆由下图的形式组成(下面的数字是篱笆的标号):
1
+---------------+
|\ /|
2| \7 / |
| \ / |
+---+ / |6
| 8 \ /10 |
3| \9 / |
| \ / |
+-------+-------+
4 5 上图中周长最小的区域是由2,7,8号篱笆形成的。
第1行:N (1 <= N <=100)
第2行到第3*N+1行:
每三行为一组,共N组信息:
每组信息的第1行有4个整数:
s, 这段篱笆的标号(1 <= s <= N);
Ls,这段篱笆的长度 (1 <= Ls <= 255);
N1s (1 <= N1s <= 8) 与本段篱笆的一端所相邻的篱笆的数量;
N2s与本段篱笆的另一端所相邻的篱笆的数量。 (1 <= N2s <= 8).
每组信息的的第2行有 N1s个整数, 分别描述与本段篱笆的一端所相邻的篱笆的标号。
每组信息的的第3行有N2s个整数, 分别描述与本段篱笆的另一端所相邻的篱笆的标号。
输出的内容为单独的一行,用一个整数来表示最小的周长。