【题目描述】
到了难得的暑假,为了庆祝小白在数学考试中取得的优异成绩,小蓝决定带小白出去旅游~~
经过一番抉择,两人决定将T国作为他们的目的地。T国的国土可以用一个凸N边形来表示,N个顶点表示N个入境/出境口。T国包含N-2个城市,每个城市都是顶点均为N边形顶点的三角形(换而言之,城市组成了关于T国的一个三角剖分)。两人的旅游路线可以看做是连接N个顶点中不相邻两点的线段。
为了能够买到最好的纪念品,小白希望旅游路线上经过的城市尽量多。作为小蓝的好友,你能帮帮小蓝吗?
【输入说明】
每个输入文件中仅包含一个测试数据。
第一行包含两个由空格隔开的正整数N,N的含义如题目所述。
接下来有N-2行,每行包含三个整数 p,q,r,表示该城市三角形的三个顶点的编号(T国的N个顶点按顺时间方向从1至n编号)。
【输出说明】
输出文件共包含1行,表示最多经过的城市数目。(一个城市被当做经过当且仅当其与线路有至少两个公共点)
【样例输入】
6
1 2 4
2 3 4
1 4 5
1 5 6
【样例输出】
4
【数据范围】
4<=N<=200000
【分析】
太伤心了,省选用Map Set永远要被卡掉……
太开心了,BZOJ永远都是开着-O2……
由于其实吧……事实上……我的程序只能的六十分……所以就简要的说下吧。
以每个三角形为顶点建图,每个相邻三角形之间连一条边。
我们可以很机智的发现这其实是一棵树。</