分析:

这一题给出的遍历的点的序列,不是树的中序遍历,前序遍历,只要遇到一个节点就打印一个节点。关键点就在,这个序列的首字母和尾字母一定要相同,因为最终都会回到根节点,那么每一个子树也一样。

状态:

d[i][j]表示i至j的状态数

d[i][j]= d[i][j]=(d[i][j]+dp(i,k)*dp(k+1,j-1)%mod)%mod;

#include <bits/stdc++.h>
using namespace std; typedef long long ll;
const int maxn=300+5;
const ll mod=1e9;
char s[maxn];
ll d[maxn][maxn]; ll dp(int i,int j)
{
if(i>j) return 0;
if(d[i][j]!=-1) return d[i][j];
if(s[i]!=s[j]) return d[i][j]=0;
if(i==j) return d[i][j]=1;
d[i][j]=0;
for(int k=i;k<j;k++)
d[i][j]=(d[i][j]+dp(i,k)*dp(k+1,j-1)%mod)%mod;
return d[i][j];
} int main()
{
freopen("exploring.in","r",stdin);
freopen("exploring.out","w",stdout);
while(~scanf("%s",s))
{
memset(d,-1,sizeof(d));
printf("%I64d\n",dp(0,strlen(s)-1));
}
return 0;
}

最新文章

  1. centos6字符
  2. FORTRAN 90标准函数(一) (转)
  3. Oracle常用的性能诊断语句
  4. protobuf C++ 使用示例
  5. Nginx文件类型错误解析漏洞--攻击演练
  6. 使用xib封装一个自定义view的步骤
  7. hdu 3311 斯坦纳树
  8. hadoop2.2编程:hadoop性能测试
  9. 【Oracle】不安装Oracle客户端直接用PL/SQL连接数据库
  10. windbg内存查看(d*)
  11. Zabbix自动发现监控Tomcat进程
  12. 企业级数据库监控利器Lepus
  13. 【UER #8】雪灾与外卖
  14. python - str和repr方法:
  15. memcached 和redis比较
  16. GoldNumber游戏比赛成绩公布
  17. SSM-CRUD实战
  18. arduino 编程基础
  19. java.awt.Graphics2D 图片缩放
  20. INDEX--索引相关信息查看

热门文章

  1. 在Vim中查看文件编码和文件编码转换
  2. 分布式存储ceph---ceph添加/删除osd(5)
  3. mysql基础之忘掉密码解决办法及恢复root最高权限办法
  4. GO学习-(14) Go语言基础之接口
  5. 201871030136-颜静 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告
  6. TOF与结构光技术分析
  7. 激光雷达数据到云cloud
  8. halcon——缺陷检测常用方法总结(光度立体)
  9. Java中List集合转Map集合报错:Duplicate key
  10. pytest命令行参数