- 博客(5)
- 收藏
- 关注
原创 HDU1075 字典树
我用字典树写的 按照题意做就行 #include#include#includeusing namespace std;class trie{public: trie* next[26]; char str_temp[12]; int num; //记录前缀的个数 bool value; //标记这里是不是一个单词 tr
2012-11-26 00:33:26 550
原创 POJ 3211 Washing Clothes
题目大意:两个人同时洗一种颜色的衣服 洗完才能洗下一种颜色的衣服 求把所有种类的衣服洗完最少时间 题解:把每种颜色的衣服转化为必须装满的背包 求最接近每种颜色衣服总时间sum[i]/2的值即dp[mid]把sum-dp[mid]累加就是答案#include #includeusing namespace std;char color[12][21],temp[21]
2012-11-26 00:16:42 491
原创 POJ 3628 Bookshelf 2
题解:01背包 恰好装满的问题 初始化的时候除了DP[0] 外全部设为不可到达 然后依次累加最后得出结果#include #include#includeusing namespace std;bool dp[20000005];int main(){ int h[22],n,m; while(cin>>n>>m) { i
2012-11-25 21:30:18 482
原创 POJ 2642 Charm Bracelet
题解:01背包的入门题 不知道为什么二维数组RE了 所以一维滚动数组可以A掉#include #include#includeusing namespace std;int dp[13000];int cost[13000],rating[13000];int main(){ int n,m; while(cin>>n>>m) {
2012-11-25 20:06:33 687
原创 HDU2527 构建哈夫曼树的灵巧运用
上课老师说了知道哈夫曼树叶子 不构图求二叉树的权 就是在构造哈夫曼树的时候运用构图的方法 把每个结点的值加起来就是该数的权 证明 W=∑叶子权*该叶子层数 除了叶子的结点和就是这个树的权 构造一个树就知道了 结点的权 肯定是下一层结点的和 就好像 W=∑叶子权*该叶子层数 这个公式运用了乘法分配律一样= = #include #include#include#includ
2012-11-07 18:50:14 739
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人