2011年10月7日

摘要: 一维度的动态规划题目,只需要一个临时变量记录当前最大值即可。起始点与终点的记录算是很巧妙,增加两个变量达到目的。 View Code 1 #include 2 3 int main() 4 { 5 //freopen("Max Sum.txt","r",stdin);... 阅读全文
posted @ 2011-10-07 23:19 AdaByron 阅读(251) 评论(0) 推荐(0) 编辑

2011年9月21日

摘要: 用了五天左右做了一下八数码的问题,所谓的八重境界也就是实现了四种而已,但是心里已经感觉实在坐不下去了,就这样总结一下吧。八数码问题使用了两点辅助工具。第一是曼哈顿距离,用来作为A*的h函数以及IDA*的剪枝。第二是康拓展开,用来标识已经遍历过的状态。第三是逆序数,作为问题的剪枝。参考代码中的运行时... 阅读全文
posted @ 2011-09-21 15:10 AdaByron 阅读(832) 评论(0) 推荐(0) 编辑
摘要: 公式 X=an*(n-1)!+an-1*(n-2)!+...+ai*(i-1)!+...+a2*1!+a1*0! 其中,a为整数,ai为当前未出现的数字中是排在第几个(从0开始)。因此0=0;k--) 9 { 10 if(value[k]>value[... 阅读全文
posted @ 2011-09-21 14:27 AdaByron 阅读(237) 评论(0) 推荐(0) 编辑

2011年9月20日

摘要: 树上的动态规划第一次做,很纠结也很混乱。其实回过头开一下,也就那么样,过不去的不是自己的知识,只是自己的心理关。嗯,今天抽空整理一下动态规划的思路。 动态规划适用于最优化问题,同时最优化问题需要具备两个要素:最有子结构和重叠子问题。①在寻找最有子结构的时候,可以遵循共同的模式: 1>问... 阅读全文
posted @ 2011-09-20 23:33 AdaByron 阅读(497) 评论(0) 推荐(0) 编辑

2011年9月19日

摘要: 题目不难,按照最近点对的算法一步一步来就可以了,没什么陷阱,所以一次AC。另外在比较距离时做了小小的优化,只在需要的时候开平方,而不是直接返回平方根。最近点对问题,参考:http://www.cnblogs.com/AdaByron/archive/2011/10/07/2200966.html 以... 阅读全文
posted @ 2011-09-19 12:06 AdaByron 阅读(777) 评论(0) 推荐(0) 编辑
摘要: 刚开始的思路好像不是并查集来着,后来想了很久还是没好的做法。最后搜了一下大致的思想便开始做了。一切搞定之后,提交WA,后来用以下两组数据测试了一下 4 3 4 3 1 2 或者 1 2 3 4 3 4 ... 阅读全文
posted @ 2011-09-19 00:12 AdaByron 阅读(313) 评论(0) 推荐(0) 编辑

2011年9月18日

摘要: 此题与典型的并查集不同的是,此题要求输出每棵树上节点的个数,所以要考虑的是如何处理节点个数的问题。最后逐个遍历相对于10000000个数据来说显然不是个好方法。仍然是牺牲空间换时间的思想,在‘并’和‘查’的同时将树中的节点个数记录到父节点中。由于数据量较大,所以考虑使用路径压缩。此题中要求了最终至少... 阅读全文
posted @ 2011-09-18 10:35 AdaByron 阅读(223) 评论(0) 推荐(0) 编辑

2011年8月8日

摘要: 用二分图的最大匹配来求解题目,关于其思想详见:http://blog.csdn.net/xinhanggebuguake/article/details/6668071 关于增广了路径的查找很多时候很纠结为什么这样实现。仔细分析不难发现,link本身就是存储了已有的增广路径,在①处的操作刚好就是取... 阅读全文
posted @ 2011-08-08 08:49 AdaByron 阅读(215) 评论(0) 推荐(0) 编辑

2011年8月7日

摘要: 先上贴老掉牙深度优先版本的,算是第一次使用搜索,伤透了哥的❤。其实刚开始一直尝试在用广度优先做,一直WA。后来认真思考一下将状态同数据一起存储,怎奈仍然无法通过。期待与有广度优先的筒子一起探讨,持续努力中…… View Code 1 //#include 2 #... 阅读全文
posted @ 2011-08-07 21:38 AdaByron 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 原来科学计数法可以直接使用的,料想不到。折半查找,加上数学求导,很容易搞定。 View Code 1 #include 2 #include 3 4 double derivative(double x){ 5 return 42.0*pow(x... 阅读全文
posted @ 2011-08-07 18:41 AdaByron 阅读(174) 评论(0) 推荐(0) 编辑

导航