2013年9月6日

Codeforces295A - Greg and Array(线段树的成段更新)

摘要: 题目大意 给定一个序列a[1],a[2]……a[n] 接下来给出m种操作,每种操作是以下形式的: l r d 表示把区间[l,r]内的每一个数都加上一个值d 之后有k个操作,每个操作是以下形式的: x y 表示把第x种操作一直到第y种操作都执行一遍 最终输出在k个操作结束之后的序列 题目大意 就是线段树的成段更新嘛~~~先用线段树统计每种操作的次数,然后再执行m次成段更新,最后查询到底的查询即可... 阅读全文

posted @ 2013-09-06 11:02 仗剑奔走天涯 阅读(382) 评论(0) 推荐(0) 编辑

Codeforces13C–Sequence(区间DP)

摘要: 题目大意 给定一个含有N个数的序列,要求你对一些数减掉或者加上某个值,使得序列变为非递减的,问你加减的值的总和最少是多少? 题解 一个很显然的结果就是,变化后的每一个值肯定是等于原来序列的某个值,因为只需要变为非递减的,所以对于某个数要么不变,要么变成左右附件的某个值。这样我们就可以根据前述条件得出DP方程了:dp[i][j]=min(dp[i][j-1],dp[i-1][j]+|a[i]-b[j... 阅读全文

posted @ 2013-09-06 10:44 仗剑奔走天涯 阅读(623) 评论(0) 推荐(1) 编辑

导航