考查:贪心
提交情况:大概10次WA
说一下我碰到的错误:
1.需要考虑d<=0的情况
2.算法中sum++;pivot=intervals[i].r;之前写成了pivot=intervals[i].l
3.main函数中,t之前定义为int了
4.main函数中的f没有在每次case时加以改变,所以如果第一次的结果为-1,则以后的结果就都是-1了。一些小问题,真是悲剧。
对于算法,在遍历区间的时候,最右边的点是贪心选择。从代码中也可看到算法只考虑了两个区间不相交以及一个区间被另一个区间包含的情况,因为如果两个区间不相交,则一定需要两个雷达,而如果包含的话,则在小区间安装的雷达一定可以覆盖大区间内的小岛。算法没有考虑两个区间相交的情况,因为如果两个区间相交[a,b]和[c,d](b>c),则在b点安装雷达后一定可以覆盖到后面区间的小岛。觉得这应该也是右边端点是贪心选择的原因,因为第一个区间左面肯定不会再有小岛了。