摘要: 构思上还是比较简单,我们可以递归的思考问题。每一个字符串都包含三部分根节点str[0]左子树str[1]-str[k]与右子树str[k+1]-str[n-1]根据乘法原理整棵树的方案数=左子树方案数*右子树方案数。这样一分析我们可以看到了这是一个区间上动态规划的问题。剩下来的就简单了,先套一下模版三层循环,再把式子列上去就ok了。 1 #include 2 #include 3 #include 4 #include 5 #define ll long long 6 #define MOD 1000000000 7 #define LEN 310 8 using namespace ... 阅读全文
posted @ 2013-11-08 09:07 张小豪 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 依然是liurujia计数练习题。依然是自己想没想出来,在MOD是素数的情况下除以x即为乘x的逆。这个真心以前没听过,用了这个方法后处理就变得十分巧妙。整个程序步骤还是很清晰的,先上来算阶乘与逆(求数的逆还是有点没理解透,需要后续章节继续学习)。然后读入建图只能用邻接表了,注意加上最开始的那个根节点就行了。然后就是搜索按照书上的公式计算就行了。代码如下: 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #define LEN 40100 8 #define MOD 1000000007 9 #d... 阅读全文
posted @ 2013-11-08 01:05 张小豪 阅读(437) 评论(0) 推荐(0) 编辑