自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 POJ 2411 解题报告

这道题是状态压缩DP。之前应该做过一次类似的,但这道题比较难些。花了比较久理解状态压缩DP。周伟的论文《状态压缩》是最好的资料。这道题是论文中的一道例题。论文中提到,由于合法状态特别多,所以这里对每一行都跑一次DFS,而不是提前保存下来。这样可以节省空间,时间上也没多少影响。事实也确实如此,16ms就过了。整体过程是从上到下一行行往下填,DP[r][s]表示,第r行状态为s时填充方法有多少

2015-09-30 07:51:07 346

原创 POJ 1562 解题报告

这道题是简单题。就是对每个有油的点跑DFS,把相邻的有油点都标记为没油。这称为一趟。输出趟数即可。thestoryofsnow1562Accepted172K0MSC++1318B/* ID: thestor1 LANG: C++ TASK: poj1562 */#include #include #include #in

2015-09-23 23:42:17 455

原创 POJ 2236 解题报告

这道题是并查集(union-find)应用。知道后就简单了。之前已经多次写过了。这里用的是之前1703的程序。刚开始用的DFS搜索,超时了,看了discuss才知道是并查集。thestoryofsnow2236Accepted196K1079MSC++1957B/* ID: thestor1 LANG: C++ TASK: po

2015-09-23 06:48:48 583

原创 POJ 1469 解题报告

这道题是求最大二分匹配,有匈牙利算法(感觉就是DFS)。这里照搬了之前3041和1274的代码,用的还是邻接矩阵,直接就过了。thestoryofsnow1469Accepted192K469MSC++2659B/* ID: thestor1 LANG: C++ TASK: poj1469 */#include #includ

2015-09-23 00:48:15 535

原创 POJ 1195 解题报告

这道题是二维树状数组(BIT)的基本应用。之前已经写过2155,那道题是区域更新,单点输出,比较异常。这道题是基本的单点更新,区域输出,所以比较好理解,一次就过了。thestoryofsnow1195Accepted4276K594MSC++/* ID: thestor1 LANG: C++ TASK: poj2155 */#inc

2015-09-23 00:00:25 348

原创 POJ 2362 解题报告

这道题是DFS+剪枝。能否通过,重点还是在于保证正确性前提下的剪枝。将棒子按照长度从大到小排序。这样做的原因是:1.排序肯定不会成为瓶颈(O(nlogn) vs O(n!))。排序还可以排除出有一根特长的棒子的情况(超过了边长)。2.从大到小找可以fail faster.1.如果找得只剩下一组了,我们就不用再找了。剩下的一组肯定能拼出来。2.如果是找一组的第一个棒子失败了,那么就不

2015-09-18 06:07:05 462

原创 POJ 1035 解题报告

这道题做起来挺有意思的。一开始的做法是求编辑距离(Levenshtein_distance, https://en.wikipedia.org/wiki/Levenshtein_distance)。因为这道题开着就像是编辑距离。对长度在[len - 1, len + 1]范围内的单词都求编辑距离,然后看diff是不是在1以内。结果超时了。编辑距离的算法是动态规划,每次需要O(n^2)的时间复杂

2015-09-16 00:22:28 398

原创 POJ 2155 解题报告

这道题最简单的方法是用二维树状数组。一维树状数组比较常见,资料也比较多:TopCoder: https://www.topcoder.com/community/data-science/data-science-tutorials/binary-indexed-%20trees/http://dongxicheng.org/structure/binary_indexed_tree/

2015-09-12 02:17:21 328

原创 POJ 1056 解题报告

1056和之前的3630是一样的。thestoryofsnow1056Accepted1420K0MSC++1727B/* ID: thestor1 LANG: C++ TASK: poj3630 */#include #include #include #include #include #include #i

2015-09-04 01:51:53 329

原创 POJ 3630 解题报告

这道题看着就是Trie题。但是难度在于动态分配节点会超时,需要静态提前分配好。问题在于有多个test cases的情况下,如何不让前面的状态不要影响到后面的状态(不可能在每个test case之前把所有节点再初始化一次,肯定超时)。我的解决方法是给每个节点加一个递增的version number,对应每次test case。事实证明这不是一个好方法。逻辑的复杂度增加不少。在“大致”正确(过

2015-09-04 01:41:15 333

原创 POJ 1032 解题报告

P.S. 之前按照列表做,做着做着就做岔了。这里回归正轨。这道题后来做成了找规律题(我用递归搜索不出意外地TLE了)。discuss 上面有好些关于规律的讨论和证明,比如:http://poj.org/showmessage?message_id=98514知道后就简单了很多了。这里参考了http://blog.csdn.net/synapse7/article/details/182

2015-09-01 04:39:52 709

原创 POJ 2471 解题报告

这道题是个简单题。但是我犯了个可能很常见的bug,然后用了很久才调试出来。我猜打印出中间过程,并验证是否符合预期,很快就能调出来。但我是通过测试数据+别人的正确程序中间结果(每段的size)对比出来的。。。测试数据:输入:http://www.informatik.uni-ulm.de/acm/Locals/2005/input/bingo.in输出:http://www.inform

2015-09-01 01:10:42 507

Nehe的OpenGL教程(PDF)

PDF格式的 讲解很详细 包括安装和一些常见问题的解答 共38课

2010-03-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除