题目:洛谷P3141. 题目大意:有一个方形区域,被分成若干区域.现在要去掉若干条围栏,使得所有区域连通,求最少去掉多少长度的围栏. 解题思路:贪心.建议画图思考. 先对围栏位置进行排序,然后相邻两条求差,再对差排序. 可以知道,每次取的是最短的一条围栏,结果一定是最优的(横向和竖向也要最短的优先),所以直接整行整列删即可. 但是全删了就会造成浪费,如果两个块已经连通,则不需要建边,所以乘的时候要注意. 然后求出答案即可.具体见代码. 注意64位整数. C++ Code: #include<cs…