题目链接
题解
差分约束
令
\(a[i]\)表示是否选择
\(i\),
\(s[i]\)表示
\(a[i]\)的前缀和
对
\(s[i] \quad i \in [-1,50000]\)分别建立一个点
首先有
\[s[i] - s[i - 1] \ge 0\]\[s[i] - s[i - 1] \le 1\] 然后就是限制条件
\[s[b] - s[a - 1] \ge c\] 然后就没了
用\(spfa\)跑最长路
由于题目保证有解,所以不会存在正环
复杂度上界是
\(O(nm)\)的,但由于保证有解,而且
\(spfa\)的玄学复杂度,并不会
\(T\) #include #include #include #include #include #include #include