Ryen的学习笔记

成长有多少新奇的美,就有多少撕裂的痛;离去有多么辽阔的自由,就有多么无边的孤寂。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

02 2010 档案

摘要:History Grading(,111):DP上来就给个下马威,这题据说是LCS,首先题意就非常容易读错,看懂题意后,我想当然的定义了错误的状态转移方程(虽然是美好的O(n)),导致一直WA,后来改正后,用O(n^2)方法AC。由此肯见,状态的定义一定要好,并且要注意检查状态转移方程是否能满足状态的定义。Longest Common Subsequence(,10405):就是LCS, 注意输入可能有空行,需要返回0,这样输入函数也需要使用gets才行。gets读入失败时返回0。Coin Change(,674): 设置状态方程时要考虑可能出现重复的问题,使用定序方法解决,开始提交一直AC, 阅读全文

posted @ 2010-02-11 16:42 Ryen_lee 阅读(792) 评论(0) 推荐(0)

摘要:第五章C++中结构体的使用:类似与类,可以定义构造函数,重载运算符。qsort的使用: 其默认是增续排列,自定义比较函数,该函数使用时不拘一格。第六章ACM题目中尽量使用数组来实现链表。指针访问比用“数组+下标”方式略快。第七章生成1~n排列的方法基本思想是用递归,先输出所有以1开头的排列,然后输出所有以2开头的排列,最后输出以n开头的。伪代码如下:[代码]对集合S的元素进行排序,然后统计各个元素出现的个数,可以得到生成可重集的程序:代码STL提供了 next_permutation函数,可以按照字典顺序生成排列:代码枚举子集的三种方法:增量构造法:每次首先打印当前子集合,然后尝试按照定序选择 阅读全文

posted @ 2010-02-04 17:23 Ryen_lee 阅读(566) 评论(0) 推荐(0)

摘要:ID Codes : next_permutation, STL水过,自己实现了个字符版本。Birthday cake: 竟然使用随机数水过了,怪哉。The Hamming Distance Problem(,729): 按字典序枚举排列,如果最后一行多输出空行会WA。Island of Logic(1478,): 经典题,基本思想是枚举所有可能状态,根据输入判断。一个好的策略是用每条输入对所有状态进行筛选,矛盾的置零,则用所有输入进行筛选后剩余的状态即为可能状态,这样比用每个状态来检测所有输入是否都可行要方便些(改变了循环的内外顺序,但是不影响结果)。注意可以有不均匀进制来表示状态(进制推广 阅读全文

posted @ 2010-02-03 11:24 Ryen_lee 阅读(640) 评论(0) 推荐(0)