动态规划
文章平均质量分 77
zhouchaoyuan
熟悉c/c++语言,对java有一定的了解,参加过程序设计竞赛,获得过湖南省二等奖,参加过邀请赛,获得过铜奖,对数据结构和算法有一定的认知!对于数据库也是比较熟悉!
展开
-
南阳理工(矩形嵌套)
http://acm.nyist.net/JudgeOnline/problem.php?pid=16 #include #include #include #define Max(x,y) x>y?x:y using namespace std; struct node { int x,y; }q[1100]; int n,res[1100]; bool cmp(n原创 2013-12-24 19:24:35 · 835 阅读 · 0 评论 -
codechef August Challenge 2014 第五个题目
题目链接:点击打开链接原创 2014-08-13 21:53:33 · 892 阅读 · 0 评论 -
vijos 1100(树状dp)
描述 设一个n个节点的二叉树tree的中序遍历为(l,2,3,…,n),其中数字1,2,3,…,n为节点编号。每个节点都有一个分数(均为正整数),记第i个节点的分数为di,tree及它的每个子树都有一个加分,任一棵子树subtree(也包含tree本身)的加分计算方法如下: subtree的左子树的加分× subtree的右子树的加分+subtree的根的分数 若某个子树为空,规定其加分原创 2014-08-20 17:13:29 · 672 阅读 · 0 评论 -
hdu4856(状态压缩)
#include #include #include #include #include using namespace std; #define N 20 char s[N][N]; const int inf = (1 << 25); int dp[20][1 << 15]; int n, m; struct no{ int id, x1, y1, x2, y2; }e[N原创 2014-07-27 14:38:24 · 937 阅读 · 0 评论 -
hdu3555(数位dp入门题)
Bomb Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others) Total Submission(s): 6762 Accepted Submission(s): 2351 Problem Description The counter-terrorists f原创 2014-07-21 10:36:28 · 825 阅读 · 0 评论 -
hdu3853(概率dp)
#include #include #include #include #include #include #include #include #include #include #include #define Inf (1<<30) #define LL long long #define MOD 1000000009 #pragma comment(linker, "/STACK:10240原创 2014-07-23 20:43:22 · 852 阅读 · 0 评论 -
poj3254(状态压缩)
这是我的第一道状态压缩题目,思路神马的都不是我自己的,不过我还是硬着头皮把代码自己敲完! #include #include #define MOD 100000000 using namespace std; int num[13],dp[13][150],state[150],n,m; int tot,cnt; bool judge(int x){return !(x&(x<<1));}原创 2014-03-12 18:35:44 · 940 阅读 · 0 评论 -
hdu1494&&hdu1203&&hdu2602(背包和dp)
hdu2602 简单01背包 #include #include #include #include #include #define maxn(x,y) x>y?x:y using namespace std; int a[1100],v[1100],res[1100]; int main() { int i,t,n,V; #ifndef ONLINE_JUDGE freopen("原创 2013-11-25 23:25:51 · 775 阅读 · 0 评论 -
uva651(记忆化搜索处理)
记忆化搜索 #include #include #include #include #include #include #define MOD 1000000007 #define LL long long #define Inf (1<<30) using namespace std; int res,d[1<<13]; int calc(int x) { int i,sum=0原创 2014-03-17 22:13:09 · 892 阅读 · 0 评论 -
hdu2089(数位dp入门题)
不要62 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 18577 Accepted Submission(s): 6233 Problem Description 杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoe原创 2014-07-20 11:36:10 · 646 阅读 · 0 评论 -
codeforces105 D(概率dp)
#include #include using namespace std; double dp[1110][1110]; int main() { int w,b; while(~scanf("%d%d",&w,&b)) { for(int j=0;j<=b;j++)dp[0][j]=0; for(int i=1;i<=w;i++)dp[i原创 2014-07-23 23:54:50 · 850 阅读 · 0 评论 -
hdu4870(概率dp)
#include #include #include using namespace std; double t[22]; int main() { double p; while(scanf("%lf",&p)!=EOF) { double q=1-p; t[0]=1/p; t[1]=t[0]/p; t[2]原创 2014-07-23 17:10:43 · 834 阅读 · 0 评论 -
递推总结
以前也做过递推的题目,但是理解不够深刻,很多的题目还是做不出来,今晚老师讲了递推,算是比较详细的,在这里总结一下! ……原创 2014-03-28 23:50:18 · 993 阅读 · 0 评论 -
uva348 最优数组乘法序列
具体解释白书上面有,只不过这个题目附带了要求出最有子结构的区间 #include #include #include #include #include #include #include #define LL long long #define Inf (1<<30) #define MOD 1000000007 #define M 100000 using namespac原创 2014-03-01 13:06:08 · 1007 阅读 · 0 评论 -
hdu4562 守护雅典娜
先筛选出来两种圆,一种是包含雅典娜,不包含怪兽的,一种是不包含雅典娜,包含怪兽的,然后圆的半径大小排序,分别对两种圆dp,最后合并两种DP,求出最大的就是结果 #include #include #include #include #include #include #include #define LL long long #define Inf (1<<30) #define原创 2014-03-01 12:59:25 · 1163 阅读 · 0 评论 -
Codeforces Round #286 (Div. 2) C
友情链接 题意:0到30000的一条直线上面有一些东西可以收集,有些地方有,有些地方没有,给定第一次(即前一次)跳跃的距离l,下一次每次跳跃可以跳前面的距离l-1,l,l+1,问跳到不能跳的时候最后可以收集多少东西? 思路;动态规划,定义dp[i][j]表示到了第i个位置与第一次跳的距离相差j最多可以收集多少。由于有负数,我引入了300的偏移量,因为最后的跳跃的次数最多不会超过250,然后原创 2015-01-19 16:55:15 · 676 阅读 · 0 评论