您的位置:首页 > 其它

codeforces GYM 101431B (STL)

2017-07-26 20:43 411 查看

Problem C. Vera and Canaday Day

STL
GYM


题目链接

题目大意

N次操作,每次在二维坐标系上添加一个整数点(没有重点),以及一个值。每个点可以选择四种双射线中的一种进行发射(上和右,右和下,下和左,左和上),射中的第一个点的值加入这个点的shoot值(每个点最多射中两个点,也可以没有射中点)。问每次加一个点之后,所有点的shoot值的和最大是多少?

数据范围:1≤N≤105

解答

显然,每加入一个点,最多影响上下左右四个点的shoot值,这四个点的shoot需要重新计算,再重新计算加入的点的shoot值,重新计算的同时维护最大和即可。

找上下左右可以直接用两个map完成。(注意迭代器如果是.begin()的话,再减减会错)

AC代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  STL GYM