码迷,mamicode.com
首页 >  
搜索关键字:区间    ( 16036个结果
HDU 5014 Number Sequence(西安网络赛H题)
HDU 5014 Number Sequence 题目链接 思路:对于0-n,尽量不让二进制中的1互相消掉就是最优的,那么只要两个数只要互补就可以了,这样每次从最大的数字,可以找到和他互补的数字,然后这个区间就能确定了,然后剩下的递归下去为一个子问题去解决 代码: #include #include const int N = 100005; int n, a[N]...
分类:其他好文   时间:2014-09-14 22:12:27    阅读次数:220
HDU 5009 Paint Pearls(西安网络赛C题)
HDU 5009 Paint Pearls 题目链接 题意:给定一个目标颜色,每次能选一个区间染色,染色的代价为这个区间不同颜色数的平方,问最小代价 思路:先预处理,把相同颜色的一段合并成一个点,然后把颜色离散化掉,然后进行dp,dp[i]表示染到第i个位置的代价,然后往后转移,转移的过程记录下不同个数,这样就可以转移了,注意加个剪枝,就是如果答案大于了dp[n]就不用往后继续转...
分类:其他好文   时间:2014-09-14 19:22:37    阅读次数:239
【hdu】Billboard(线段树)
线段树的区间最大值问题,边界特殊处理一下。 #include #include #include #include #include #include using namespace std; #define maxn 222222 int tree[maxn << 2]; int w,h,m,ok; void BuildTree(int L,int R,int pos){ tree[p...
分类:其他好文   时间:2014-09-13 22:51:26    阅读次数:206
猜数字里的算法思想
我们先来玩一个猜数字游戏:我心里默念一个1~64之间的数,你来猜(你只能问答案是“是”或“否”的问题)。为了保证不论在什么情况下都能以尽量少的次数猜中,你应该采取什么策略呢?很显然,二分。先是猜是不是位于1~32之间,排除掉一半可能性,然后对区间继续二分。这种策略能够保证无论数字怎么跟你捉迷藏,都能...
分类:其他好文   时间:2014-09-13 18:28:55    阅读次数:230
桶排序
参考资料:算法导论note1:桶排序是另外一种以O(n)或者接近O(n)的复杂度排序的算法. 它假设输入的待排序元素是等可能的落在等间隔的值区间内.一个长度为N的数组使用桶排序, 需要长度为N的辅助数组. 等间隔的区间称为桶, 每个桶内落在该区间的元素. 桶排序是基数排序的一种归纳结果note2:待...
分类:其他好文   时间:2014-09-13 17:11:55    阅读次数:217
主方法
设a>=1和b>1为常数,设f(n)为一函数,T(n)由递归式T(n)=aT(n/b)+f(n);对于非负整数定义,其中n/b指n/b上区间和下区间。那么T(n)可能有如下渐近界:1)若对于某常数e>0.f(n)=O(n^(logb(a)-e)),则T(n)=Q(n^logba);2)若f(n)=Q...
分类:其他好文   时间:2014-09-13 10:36:34    阅读次数:195
UVa 11134 (区间上的贪心) Fabled Rooks
这道题真是WA得我心力交瘁,好讨厌的感觉啊!简直木有写题解的心情了题意:n×n的棋盘里,放置n个车,使得任意两车不同行且不同列,且第i个车必须放在给定的第i个矩形范围内。输出一种方案,即每个车的坐标,无解的话则输出“IMPOSSIBLE”行和列是独立的,所以可以分开处理,将二维的转化成了一维区间上的...
分类:其他好文   时间:2014-09-13 09:20:34    阅读次数:186
【hdu】I Hate It(线段树,结点修改求区间最大值)
线段树的模板题,还是二分递归。 #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long LL; #define MAXD 10 #def...
分类:其他好文   时间:2014-09-12 20:44:04    阅读次数:222
HDU 4267 A Simple Problem with Integers --树状数组
题意:给一个序列,操作1:给区间[a,b]中(i-a)%k==0的位置 i 的值都加上val 操作2:查询 i 位置的值解法:树状数组记录更新值。 由 (i-a)%k == 0 得知 i%k == a%k,又因为k #include #include #include #include #inclu...
分类:其他好文   时间:2014-09-12 18:58:03    阅读次数:142
go的slice学习
切片是对某个容器不同区间范围的引用。 a := []int{0,0,0,0,0} 这行代码实际上包含了两个逻辑步骤: 1.创建了一个容量为5的容器 2.a引用容器[0:5]的区间,a[1]=1即设置变容器第二个位置的值为1。 b := a[0:2] 这行...
分类:其他好文   时间:2014-09-12 17:27:44    阅读次数:193
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!