spoj
文章平均质量分 51
johsnows
正在静下心来学算法的acmer
展开
-
spoj Can you answer these queries I(线段树 单点更新 区间查询)
题意:给你一个序列,有m次查询,查询一个区间最大连续子序列和最大值。思路:之前做过一个最大连续子序列和的题,那个题有个分治的做法,在回溯的时候,区间最大连续子序列和的最大值只有三个可能,左区间的最大值,右区间的最大值,左区间从最右边开始到左边的最大连续子序列 和加上右区间从最左边开始到右边的最大连续子序列和。这个题也类似了,由于是区间查询,所以我们需要使用线段树去维护,相当原创 2017-03-15 21:07:15 · 455 阅读 · 0 评论 -
spoj 1716 Can you answer these queries III
和上回做的线段树几乎一样。http://blog.csdn.net/johsnows/article/details/62237377不过这回只能有单点更新的方法去做了代码:#include #define LL long long using namespace std;const int maxn=5e4+5;const int inf=10000;str原创 2017-04-17 17:46:04 · 327 阅读 · 0 评论 -
spoj Interesting Game (数位dp+nim博弈)
题意:有一个long long 大小的数,alice和bob轮流将其中每一位的数减小任意数量到0为止,将所有位置为0的人赢,每次alice都是先手,问[l,r]区间内有多少个数是alice必赢,多少个数是bob必赢。解题思路:队友cyk推荐的题目,确实蛮有意思的233.减数字游戏其实就是取石子游戏,然后问你l,r区间的话用一下数位dp去求有多少个数每位数^为0就行了。原原创 2017-05-03 16:20:12 · 366 阅读 · 0 评论