摘要: 这道题不愧是第一题,真的挺水的. 看到要搞使区间的最大长度和最少长度之差最小,先按长度排序. 要统计某个地方的出现次数,有这么大的数据范围,离散坐标少不了. 排序完之后,选择的区间肯定是连续的一段了,不如二分枚举再加上线段树判定吧... 当然不是这么搞的,搞两个指针前后移动维护最大值>=m的性质即可 阅读全文
posted @ 2017-03-09 21:57 CHADLZX 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 敲了一份NTT模板,在很多时候答案需要取余的时候NTT有较好的的效果. 阅读全文
posted @ 2017-03-09 18:44 CHADLZX 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 蛤省上一年的省选题. 当时我在现场看到这道题,想到了DP,但这并没有什么卵用,最终下午爆零滚粗. 这题我最初的思路是f[i][j][0/1]表示i-j合并成0/1的最大收益,发现这样很不容易转移,因为我需要枚举K个组成0/1的方案,不说代码复杂度,枚举方案的时间复杂度也很难承受. 所以转换思路,设f 阅读全文
posted @ 2017-03-09 16:57 CHADLZX 阅读(372) 评论(0) 推荐(0) 编辑
摘要: 这题的技术性不高. 查询的时候按照树上链查询第K大做法做. 连边的时候可以启发式合并,暴力的将一个合并到另一个. 由于是树上的主席树,所以这两个操作维护起来并不是特别困难. 平心而论,对于这道题,出题人是给了我们很多方便的. 还有一个地方是,刚开始输入的T是在比赛时区分数据点数的,没什么用,别看成多 阅读全文
posted @ 2017-03-09 14:50 CHADLZX 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 如果只有行和列的覆盖,那么可以直接做,但现在有左上到右下的覆盖. 考虑对行和列的覆盖情况做一个卷积,然后就有了x+y的非覆盖格子数. 然后用骑士的左上到右下的覆盖特判掉那些x+y的格子就可以了. 注意题意,Row是从上到下来的,被坑得好惨. 阅读全文
posted @ 2017-03-09 10:05 CHADLZX 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 用FFT再去重计算出两条边加起来为某个值得方案数,然后用总方案数减去不合法方案数即可. 阅读全文
posted @ 2017-03-09 09:25 CHADLZX 阅读(112) 评论(0) 推荐(0) 编辑