摘要: 先二分答案m, 然后对于原序列 A[i] = A[i] - m, 然后O(n)找最大连续子序列和, 那么此时序列由 L + mx + R组成. L + mx + R = sum - n * m, sum为原序列的和.假如二分的答案m是可行的, 那么 L + R = sum - n * m - mx ... 阅读全文
posted @ 2015-07-20 20:05 JSZX11556 阅读(431) 评论(0) 推荐(0) 编辑
摘要: 软件构成了一些树和一些环, 对于环我们要不不选, 要么选整个环. 跑tarjan缩点后, 新建个root, 往每个入度为0的点(强连通分量) 连边, 然后跑树dp( 01背包 )-------------------------------------------------------------... 阅读全文
posted @ 2015-07-20 14:22 JSZX11556 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 线段树...区间开方...明显是要处理到叶节点的之前在CF做过道区间取模...差不多, 只有开方, 那么每个数开方次数也是有限的(0,1时就会停止), 最大的数10^9开方10+次也就不会动了.那么我们线段树多记个max就可以少掉很多不必要的操作---------------------------... 阅读全文
posted @ 2015-07-20 11:23 JSZX11556 阅读(701) 评论(2) 推荐(0) 编辑