ACM-DP
文章平均质量分 66
wsniyufang
这个作者很懒,什么都没留下…
展开
-
POJ 2181简单DP
#include#include#include#include#include#include#include#include#include#define MAX 50500using namespace std;int p;int a[150100];long long d原创 2011-07-14 19:57:55 · 811 阅读 · 0 评论 -
codeforces Round #117 Div.2 182E. Wooden Fence
#include #include #include #include #include #include #include #include #include using namespace std; const int MOD=1000000007; const int M=3209; const int N=230; int n,l,a[N],b[N]; long long dp[M][N]原创 2012-04-25 08:48:35 · 2327 阅读 · 0 评论 -
CodeForces Round #112 Div2 165 E. Compatible Numbers
/* 经典DP 一定一个数组a1,a2,a3..... 对于每一个ai在此数组中找到一个数aj,使得ai&aj=0,如果没有这样的aj,输出-1; n最大1000000. 对于一个ai,按位取反后的数x,肯定满足ai&x=0;但aj=x是充分不必要条件,对与x,它的二进制中若干个1变为0并不影响ai&x=0; 所以只要数组中存在这类x中的一个就行了。 */ #include #include原创 2012-03-26 14:53:14 · 2416 阅读 · 0 评论 -
poj 3133 插头Dp
poj3133 #include #include #include using namespace std; const int hash_size=60007; const int INF=100000; int n, m; int map[20][20]; int原创 2011-10-11 15:24:27 · 1412 阅读 · 0 评论 -
集训队例赛——20110925 解题报告
//注释不是很多,读懂代码需要耐心。。。。。。读不懂可以在下面留言,我尽量回复。 //希望大家都写赛后总结——写在自己人人或者空间博客内,没写出1002和1004的应该反思一下最近的状态了。。。 /* 1001 开始用dfs递归,爆栈了 后来模拟又因为 出迷宫的条件一直wa,细原创 2011-09-25 22:30:16 · 1267 阅读 · 0 评论 -
HDU 3893 Drawing Pictures
/* 题目的要求是用1-6六种颜色排成一列 而且必须对称。相邻不同色。不出现123456 n为偶数的时候必然无解, 因为最中心两个无法满足相邻不同色的要求 对于n奇数的情况因为是对称考虑前n/2+1的部分 这部分必然满足相邻不同色,不出现123456 同时不出原创 2011-08-25 21:35:49 · 817 阅读 · 0 评论 -
HDU 3920 Clear All of Them I 状态压缩DP 2011 Multi-University Training Contest 9 - Host by BJTU
/* 参考:http://blog.csdn.net/racebug2010/article/details/6683963 第一道状态压缩DP state的二进制表示(如110011)表示状态第1,2,5,6的点已经被消灭 DP[state]表示为state状态时的最小距离和原创 2011-08-17 22:54:16 · 738 阅读 · 0 评论 -
HDU 2670 Girl Love Value 动态规划
/* 一看到n和k的范围和题目的类型就应该想到和DP有关了 先按Bi由大到小排序(递减快的早点选,这里是贪心的思想) dp[i][j]表示前i个取了j个能达到的最大值 那么转移方程就是 dp[i][j]=max(dp[i-1][j],dp[i-1][j-1]+Ai-(j-1)*B原创 2011-08-15 00:23:46 · 1148 阅读 · 0 评论 -
HDU 4001 To Miss Our Children Time 最长路, DP
/* 最长路实现 */ #include #include #include #include #include #include #include #include #include #include using namespace std; const int N=10原创 2011-09-04 22:30:16 · 982 阅读 · 0 评论 -
POJ 1463 Strategic game 最小点覆盖,树形DP
/* 应该是一道最小点覆盖问题,可以拆点用二分图做 这里用树形DP来解决 对叶子结点i,显然:dp[i][0]=0,dp[i][1]=1 否则,dp[i][0]=sum(dp[j][1],j为i的孩子), dp[i][1]=sum(MIN(dp[j][0],dp[j][原创 2011-07-28 21:27:50 · 931 阅读 · 0 评论 -
ZOJ Monthly, July 2011 - G Tree of Three 3516
/* 一遍DFS维护自身和子节点的前三个值 */ #include #include #include #include #include #include #define MAXN 10009 using namespace std; int n; struct Node {原创 2011-07-25 16:24:46 · 933 阅读 · 0 评论 -
HDU 4323 Magic Number 编辑距离(经典DP)
#include #include #include #include #include #include using namespace std; char str[1509][1009],s[1009]; int dp[1509][1509]; int n,m; int main() { int ca,len,len2,p,op,ans; scanf("%d",&ca);原创 2012-08-04 21:35:17 · 2906 阅读 · 0 评论