#include
#include
#include
using namespace std;
#define SIZE 230
#define BACK 1
#define AWAY 0
int DP[SIZE][SIZE][2];
bool visits[SIZE];
int vals[SIZE];
deque tree[SIZE];
int num, steps;
void ...
分类:
移动开发 时间:
2014-10-05 15:08:08
阅读次数:
176
题目大意:定义一棵深度为d的严格n元树为根的深度为0,最深的节点深度为d,且每个非叶节点都有恰好n个子节点的树
给定n和d,求深度为d的严格n元树一共有多少种
此题的递推部分并不难 首先我们设深度为i的严格n元树一共有f[i]种 令S[i]为f[i]的前缀和
我们不难发现一棵深度为i以下的严格n元树由两部分组成:一个根节点,n棵子树,其中每棵子树的深度不超过i-1
每棵子树有S[i-1]种...
分类:
其他好文 时间:
2014-10-05 12:42:28
阅读次数:
194
题意:给你一颗树,让你求树的重心,树的重新的定义是如果去除掉这个节点,这个节点的子树节点个数的最大值 最小。解题思路:动态规划,树形dp在这里发现 vector 还是比 数组指针性能上差一些。解题代码: 1 // File Name: poj1741.cpp 2 // Author: darkdre...
分类:
其他好文 时间:
2014-10-05 11:46:58
阅读次数:
223
题目:有2中面条各n碗,每次抛硬币判断吃哪一种(到一种吃完为止),问抛硬币的数学期望。
分析:动态规划,概率dp。求出每种结束状态(即,有一种吃完)的概率,分别乘以步长即为期望。
大黄解法:状态位剩余的碗数,逆向求解,状态方程:
DP[ i ][ j ] = (DP[ i-1 ][ j ]+DP[ i ][ j-1 ])/2 + 1 ...
分类:
其他好文 时间:
2014-10-04 21:41:47
阅读次数:
193
题目大意:给定一个由‘W','I','N','G'构成的字符串,给定一些规则,这些规则可以将两个字符合成为一个,例如"II"可以合成为'W',"WW"可以合成为'I'或者'N'
求这个字符串可以最终合成为哪几种字符
看到这题我想到了广搜。。。其实没必要,动归完全可以解决
令f[i][j][k]为从i开始的j个字符是否可以合成为字符[k]
然后j从外层循环,剩下的全部预处理,怎么暴力怎么转移...
分类:
其他好文 时间:
2014-10-04 17:25:07
阅读次数:
234
Post Office
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 15966
Accepted: 8671
Description
There is a straight highway with villages alongside the high...
分类:
其他好文 时间:
2014-10-04 00:11:35
阅读次数:
392
准确来说,动态规划是一种思想,而不是一种算法。算导里将它归结为——高级程序设计技巧。 在线性结构上进行状态转移DP,统称线性DP。 线性DP最常见的有: 子集和问题,LIS问题,LCS问题。 拓展之后有:子段和问题,杂类问题。1. 子集和问题和硬币计数问题子集和问题的一个实例: 〈S,t〉。其中,....
分类:
其他好文 时间:
2014-10-02 21:24:53
阅读次数:
264
Beautiful People
Time Limit: 5 Seconds Memory Limit: 32768 KB Special Judge
The most prestigious sports club in one city has exactly N members. Each of its members is strong and beauti...
分类:
其他好文 时间:
2014-10-02 14:10:43
阅读次数:
180
题目大意:有一些牛,他们的牛舍需要被打扫。有N(N
思路:1w的数据量不算很大,再加上时限5s,就n^2动归来做。
将牛按时间段的开始排序。
设f[i]为若取第i头牛打扫,到这头牛结束的时间最小花费是多少。
则 f[i] = min(f[i],f[j] + cost[i]) (f[i].st
最后是初值和答案的问题。由于题目中说每时每刻都有牛在打扫,所以f的初值为极大...
分类:
其他好文 时间:
2014-10-01 19:00:31
阅读次数:
166