摘要: 传送门 f[i][j] 表示区间 i 到 j 变为回文串所需最小费用 1.s[i] == s[j] f[i][j] = f[i + 1][j - 1] 2.s[i] != s[j] f[i][j] = min(f[i + 1][j] + cost[s[i]], f[i][j - 1] + cost[ 阅读全文
posted @ 2017-05-30 20:52 zht467 阅读(195) 评论(0) 推荐(2)
摘要: 传送门 说要统计方案,感觉就是个 Σ 而矩阵中只有 01 ,可以用二进制表示 这样,预处理出每一个每一行所有可能的状态 s 然后初始化第一行所有状态的方案数为 1 f[i][j] = Σf[i - 1][k] (k 和 j 不冲突,j 为第 i 行所有方案,k 为第 i - 1 行所有方案) ——代 阅读全文
posted @ 2017-05-30 19:34 zht467 阅读(172) 评论(0) 推荐(0)
摘要: 传送门 先按照起点 sort 一遍。 这样每一个点的只由前面的点决定。 f[i][j] 表示终点为 i,花费 j 的最优解 状态转移就是一个01背包。 ——代码 1 #include <cstdio> 2 #include <cstring> 3 #include <iostream> 4 #inc 阅读全文
posted @ 2017-05-30 17:16 zht467 阅读(180) 评论(0) 推荐(0)