03 2012 档案

最长公共子序列-空间优化-BITOJ
摘要:<空间优化>求两个字符串的最长公共子序列的长度。输入:第一行字符串 S1第二行字符串 S2(注:字符为英文字母,大小写均可。字符串长度大于等于1 ,各不大于10000)输出:数字 M ,为最长公共子序列长度。例如:输入:BDCABAABCBDAB输出:4测试输入期待的输出时间限制内存限制额外进程测试用例 1以文本方式显示ABKLMNABCDI↵ABCDEFGHIJKLMNOPQRSTUVWXYZ↵以文本方式显示6↵1秒256KB0思路:典型的动态规划问题dp[i][j]:表示a串前i个字符与b串前j个字符的最长公共字符的个数,dp[n][m]即为最后的结果。显然:dp[i][j]= 阅读全文

posted @ 2012-03-16 13:23 kevinkitty 阅读(1999) 评论(5) 推荐(1)

能被15整除的最大整数 BITOJ 网络教室
摘要:能被15整除的最大整数sources:http://cms.bit.edu.cn/moodle/mod/programming/view.php?a=5539能被15整除的最大整数成绩: 5 / 折扣: 0.8给定一个只包含数字 [0..9] 的字符串,求使用字符串中的某些字符,构造一个能够被15整除的最大整数。注意,字符串中的每个字符只能使用一次。输入:程序从标准输入读入数据,每行数据由一串数字组成,长度为1到1000。输出:针对每一行输入,输出一个结果,每个结果占一行。如果无法构造出能够被15整除的整数,请输出impossible。测试输入期待的输出时间限制内存限制额外进程测试用例 1以文 阅读全文

posted @ 2012-03-15 19:39 kevinkitty 阅读(1361) 评论(0) 推荐(1)

poj 2001
摘要:poj 2001题意:给你一堆字符串,要求能够唯一识别该字符串的最短前缀。(字典树+静态数组)类似于poj3283。在每个节点域里面加一个repeated,建立字典树的时候,repeated=false该节点再次被访问时repeated=true于是对每一个字串,依字典树遍历每个节点遇到repeated=false 则表示是最短前缀。code:#include<algorithm>#include<iostream>#include<string>#include<cstdlib>#include<cmath>using namesp 阅读全文

posted @ 2012-03-10 15:18 kevinkitty 阅读(344) 评论(0) 推荐(0)

poj 3283
摘要:poj 3283典型的字典树问题(字典树+静态数组+hash)题目:将每块字符看成一个单字符,这样一行字符块就构成了一个字符串。倒着往前一次建立字典树,求所用的节点。看样例:33 7D AH 5S4 9C 3D 4D 5S2 AH 5S5S->AH->7D5S->4D->3D->9C5S->AH然后:5S->AH->7D(5S->AH)(5S->)4D->3D->9C带括号表示已经出现过不需要再建立节点。于是最后需要的节点数就是9-3=6;实现的时候,我不喜欢用各种指针,申请空间和释放空间都比较麻烦。于是可以用静态数组表示 阅读全文

posted @ 2012-03-10 14:18 kevinkitty 阅读(1278) 评论(0) 推荐(0)

导航