选最多的线段,他们两两不重叠(端点也不可以)
其实是个很水的问题,有很多方法,以前一直用排序+dp,因为太傻逼,遇到变式就卡住了。
决定写下贪心做法。
一个很无脑的想法就是按左端点排序,然后无脑选。
然而随手就能找反例。
改进一:在左端点一样时按右端点升序排序,再贪心。
好像好一些,然而也是随手卡。
这样就GG了。
所以要去掉包含别的线段的线段(选被包含的一定不会差)。按左端点升序,右端点降序排序。
扫一遍,如果当前线段右端点大于下一条,就舍去。
于是就能愉快的贪心了。正确性显然。
注意,只能应对不带权的,带权的话本蒟蒻只会dp。
code:不存在的