题目链接:http://www.cppblog.com/Files/wwy250/problemset.rar
得分 364 用时 4h
由于做过分高一点
1.模拟没什么说的 得分100
2.动态规划 得分100
令f[c][l]=为匹配部分为字符串c的前缀l使得后面的字符串有
两种分解方法的最小长度
这句话说的我自己都听不懂请大家结合下图看
所以答案即为min(f[i][0]|1<=i<=n)
转移方程为:f[c][l]=min(min(getf(i,strlen(s[c])-l)+l|后缀l+1为i的子 串),min(getf(c,l+strlen(s[i]))|i为后缀l+1的子串))
至于输出方案就不用我说了吧
3.按N皇后搜的 得分30
4.贪心+随机化+卡时 得分54
每次对于能直接拓展的每个节点有一个权值既通过该节点可直接拓展的节点数×一个随机数(0<rand()<1)
从小到大一次拓展全职由小到大的节点+上一个卡时就是这个分数
5.KMP做的 得分80分
想到 AC自动机可是我只能判断字符串集里是否有棋局的子串 而如可将所有子串求出无从下手
posted on 2009-03-09 22:09
250 阅读(803)
评论(0) 编辑 收藏 引用 所属分类:
oi