树形DP问题。定义:1.dp[u][1]表示u这个点设立糖果发放点且u这棵子树满足条件时的最少糖果点数2.dp[u][0]表示u这个点不设立发放点且u这棵子树满足条件时的最少糖果点数设v1,v2……vn为u的子节点,则转移方程:dp[u][1]=
sum(min(dp[vi][1],dp[vi][0...
分类:
其他好文 时间:
2014-06-02 20:35:30
阅读次数:
262
环状合并石子问题。环状无非是第n个要和第1个相邻。可以复制该行石子到原来那行的右边即可达到目的。定义:dp[i][j]代表从第i堆合并至第j堆所要消耗的最小体力。转移方程:dp[i][j]=min(dp[i][k]+dp[k+1][j]+sum[i][j]);复杂度:O(n^3)。可考虑四边形优化。...
分类:
其他好文 时间:
2014-06-02 20:34:03
阅读次数:
226
混合三种背包问题。定义:dp[i][k]表示体积为k的时候,在前i堆里拿到的最大价值。第一类,至少选一项,dp初值全赋为负无穷,这样才能保证不会出现都不选的情况。dp[i][k]
= max(dp[i][k],max(dp[i-1][k-c]+g,dp[i][k-c]))其中:dp[i][k]是不选...
分类:
其他好文 时间:
2014-06-02 20:32:13
阅读次数:
238
单调队列优化DP。定义dp[i][j]表示第i天手中有j股股票时,获得的最多钱数。转移方程有:1.当天不买也不卖:
dp[i][j]=dp[i-1][j];2.当天买了j-k股: dp[i][j]=max(dp[r][k]+(j-k)*Ap[i]);
(r=1,所以i>w+1时才能转移,这是i#in...
分类:
其他好文 时间:
2014-06-02 20:03:15
阅读次数:
191
题意:即求给定n个数字(a1,a2,……an),不改变序列,分成M份,使每一份和的乘积最大。思路:dp[i][j]表示把前i个数字,分成j份所能得到的最大乘积。转移方程:dp[i][j]
= max{ dp[k][i-1]*sum(k+1,j) } 其中显然j#include #include #i...
分类:
其他好文 时间:
2014-06-02 19:58:45
阅读次数:
242
1.Problem DescriptionGiven a sequence
a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a
sub-sequence. For example, given (6,-1,5,4,-...
分类:
其他好文 时间:
2014-06-02 17:36:53
阅读次数:
234
剪枝的概念极大极小过程是先生成与/或树,然后再计算各节点的估值,这种生成节点和计算估值相分离的方式,需生成规定深度内的所有节点,搜索效率较低。
如果能边生成节点边对节点估值,并剪去一些没用的分枝,这种技术被称为α-β剪枝。剪枝方法(1) MAX节点(或节点)的α值为当前子节点的最大到推值;(2)
M...
分类:
其他好文 时间:
2014-06-01 12:32:00
阅读次数:
552
type node1=record go,next:longint;end; node2=record
l,r,mx,sum:longint;end;var i,x,y,n,q,tmp,cnt,sz,code:longint; ch,st:string;
fa:a...
分类:
其他好文 时间:
2014-06-01 11:45:18
阅读次数:
374
title:
Work out the first ten digits of the sum of the following one-hundred 50-digit numbers.
37107287533902102798797998220837590246510135740250
4637693767749000971264812489697007805041701826053...
分类:
其他好文 时间:
2014-06-01 08:53:33
阅读次数:
276
select total_user from a_user_no where date_time=(select max(date_time) from a_user_no where
‘2013-05’+ "'=to_char(date_time,‘yyyy-mm’));
通过max 函数来去5月份出现最大日期的数据...
分类:
数据库 时间:
2014-06-01 08:53:00
阅读次数:
312