posted @ 2013-07-31 20:22 冰天雪域 阅读(109) 评论(0) 推荐(0) 编辑
摘要:
题意:给出一个长度不超过16的字符串s,问最少删除多少次其中的回文串能把整个s删得干干净净(回文串可跨字母组成),共T组测试数据(T >集合上的动态规划。。。和点集配对很像,这里我先求出所有的回文串,然后dp。设d[S]表示将集合S中的字母删除需要多少步,结果就是d[(1#include #include using namespace std;const int maxn = 16 + 1;const int INF = 1000000000;char s[maxn];bool ispal[1 0; sub = (sub-1) & S){ if(ispal[sub]) ... 阅读全文