EG题题解

未读事项

https://ac.nowcoder.com/acm/contest/122651/E

E

【线段树、区间修改、二分】

带区间修改的线段树经典题目。

前两个操作明显可以直接使用区间修改做。在节点上维护 中的两个系数 。 第三个操作,比较好的做法是在线段树上二分。 偷懒的做法是先二分然后再在线段树上查询。具体做法是:我们把未读标记成 1, 已读标记成 0. 对于位置 ,我们先求出后缀和 ,我们只需要求出 ,使得后缀和 ,并且让 最大。对位置 二分就可以。

G

【数论、思维】

把样例的数组排序,注意到最终得到的最小的正整数,其实是相邻两个数字的差的最小值。 不过题目给的样例太特殊了,再举一个比较一般的例子,发现最终数列的最小的正整数,是原来数组所有元素的 。设数组的最大值是 ,整个数组的 ,最终数组的长度是 ,把原来数组中能够被 整除的刨除,就是我们可以添加的整数的数量 ,如果它是奇数,那么先手必胜。否则后手必胜。

全部评论
G本质是辗转相减
1 回复 分享
发布于 11-29 09:28 上海

相关推荐

11-13 14:37
门头沟学院 Java
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务