您的当前位置:首页正文

srm 578 dv2 1000pt

来源:华佗健康网

这题我做了好几天(真是弱),刚开始不会,然后苏神教了我好长时间,但是我智商太低!还是不懂。。

于是我不得已去看题解。。我一直觉得tc那个神马vexorian写的题解有点反人类,所以一直不想看,结果这场不是他写的(囧)。。一看就懂了

思路嘛。。大概就是一个位置可以放0,可以放1,但是放0有区间限制,怎么办呢?用一个last记录一下前一个1,如果不在以i结尾的区间内,那这个位置就必须放1了。。

贴个代码

 相同思想的还有dv1 500pt,这次要求每个区间最多只能放2个,如果用前一题的做法用2个变量来记录前2个1的话,空间超了。如果这个位置放1,还要扫描所有区间看看有木有违背,复杂度就是300^4左右吧,太慢。

不妨换一个角度,只记录前1个1,如果这个位置放1,那么直接跳到下一个能放1的区间作为起始点,这样空间n^2,时间O(nm^2)

 

转载于:https://www.cnblogs.com/1carus/p/3404237.html

因篇幅问题不能全部显示,请点此查看更多更全内容