码迷,mamicode.com
首页 >  
搜索关键字:区间    ( 16036个结果
BZOJ 1026 SCOI2009 windy数 数位DP
题目大意:求[a,b]区间内有多少个数满足任意相邻两个位置上的数>=2 首先将[a,b]分解为[1,b]-[1,a-1] 然后令f[i][j]为以i开头的j位windy数有多少个 然后十进制拆分即可 此题有些要讨论的地方: 1.小心爆int 2.最后一位要单独讨论 3.已经确定的数字是否不满足windy数的条件 4.一开始的[0,99...99]的区间需要单独计算 #includ...
分类:Windows程序   时间:2014-10-14 16:21:58    阅读次数:300
HDU 3698 DP+线段树
给出N*M矩阵,每个点建立灯塔有花费,每个点的灯塔有连接范围,求每一行都建立一个灯塔的最小花费,要求每相邻两行的灯塔可以互相连接,满足 |j-k|≤f(i,j)+f(i+1,k) DP思路,dp[i][j]=在第i行的j位置放置灯塔的最小花费,dp[i][j]=Min(dp[i-1][k]+a[i][j]),同时更新当前点可以覆盖该行的所有位置的最小值 要求上个区间的最小值,用线段树优化,否则...
分类:其他好文   时间:2014-10-14 16:17:28    阅读次数:267
uva1400线段树
题意:在l,r区间找到 最靠近左边的和最大区间。要理清思路写。简单区间合并。查找要麻烦点,三个查找函数,分别是向左范围内最大连续,向右范围内最大连续,整体最大连续。#include #include #include #include #include #include #include #in.....
分类:其他好文   时间:2014-10-14 13:25:28    阅读次数:287
BZOJ 3261 最大异或和 可持久化Trie树
题目大意:给定一个序列,提供下列操作: 1.在数组结尾插入一个数 2.给定l,r,x,求一个l 首先我们可以维护前缀和 然后就是使x^sum[n]^sum[p-1]最大 x^sum[n]为定值,于是用Trie树贪心即可 考虑到l-1 每个区间[l,r]的Trie树为tree[r]-tree[l-1] 注意0要插入一个数字0,所以把-1作为空节点,然后把数组向前推进一位即可 #inc...
分类:其他好文   时间:2014-10-14 11:13:48    阅读次数:206
Codeforces 46D Parking Lot(贪心模拟)
Codeforces 46D Parking Lot 题目链接 开线段树专题开出了这题。。看似要用区间合并求连续最大区间,其实不需要。因为询问才100个,直接set暴力去模拟即可,每次车进来就从左往右找到一个合适位置 代码: #include #include #include using namespace std; const int N = 100005; i...
分类:其他好文   时间:2014-10-14 11:11:58    阅读次数:173
iOS算法(一)置快速排序算法
快速排序是当遇到较大数据时,排序快,高效的方法(公司面试时,基本上会被问到...)该方法的基本思想是:1.先从数列中取出一个数作为基准数。2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。3.再对左右区间重复第二步,直到各区间只有一个数。简..
分类:移动开发   时间:2014-10-14 05:18:48    阅读次数:244
uva 12436 - Rip Van Winkle's Code(线段树)
题目链接:uva 12436 12436 - Rip Van Winkle's Code 题目大意:四种操作,操作见题目。 解题思路:即用线段树维护一个等差数列,因为一个等差加上一个等差还是一个等差数列,所以对于每个节点记录区 间左端的值,也就是首项,以及公差即可。因为还有一个S操作,所以要开一个标记记录区间值是否相同。 #include #include #inclu...
分类:Windows程序   时间:2014-10-14 02:07:37    阅读次数:359
BZOJ1652 [Usaco2006 Feb]Treats for the Cows
蒟蒻许久没做题了,然后连动规方程都写不出了。参照iwtwiioi大神,这样表示区间貌似更方便。令f[i, j]表示i到j还没卖出去,则f[i, j] = max(f[i + 1, j] + v[i] * T, f[i, j -1] + v[j] * T) (←这样用推的方式更好想一点。。) 1 /*...
分类:其他好文   时间:2014-10-13 23:56:27    阅读次数:175
HDU 3397 Sequence operation(线段树)
HDU 3397 Sequence operation 题目链接 题意:给定一个01序列,有5种操作 0 a b [a.b]区间置为0 1 a b [a,b]区间置为1 2 a b [a,b]区间0变成1,1变成0 3 a b 查询[a,b]区间1的个数 4 a b 查询[a,b]区间连续1最长的长度 思路:线段树线段合并,需要两个延迟标记一个置为01,一个翻转,然后由...
分类:其他好文   时间:2014-10-13 22:18:57    阅读次数:278
poj3368线段树
题意:给出q次询问,求区间内最长的连续序列。 水题。1.RMQ 求法 ,st算法 2.线段树,简单的区间合并#include#include#includeusing namespace std;const int maxn = 111111;const int INF = 99999999;int...
分类:其他好文   时间:2014-10-13 20:10:17    阅读次数:221
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!