随笔分类 -  dp--区间dp

摘要:bzoj1413 洛谷P2599 根本不会啊。。。 看题解吧 1 #include<cstdio> 2 #include<algorithm> 3 #include<cstring> 4 #include<vector> 5 using namespace std; 6 #define fi fir 阅读全文
posted @ 2018-11-09 20:47 hehe_54321 阅读(268) 评论(0) 推荐(0)
摘要:bzoj1068 洛谷P2470 区间dp入门题?只要注意到每个M“管辖”的区间互不相交即可 错误记录:有点小坑,比如aaaacaaaac最优解为aRRcR(意会坑在哪里),踩了一次 1 #include<cstdio> 2 #include<algorithm> 3 #include<cstrin 阅读全文
posted @ 2018-11-04 22:13 hehe_54321 阅读(255) 评论(0) 推荐(0)
摘要:如果按照http://www.cnblogs.com/hehe54321/p/loj-1031.html的$O(n^3)$做法去做的话是会T掉的,但是实际上那个做法有优化的空间。 所有操作可以分解为由两步组成的操作:第一步是在数列的某一端取一个数并加到自己的得分上,第二步是把下一步操作的权利给自己或 阅读全文
posted @ 2018-02-08 12:29 hehe_54321 阅读(300) 评论(0) 推荐(0)
摘要:Easy Game LightOJ - 1031 upd:似乎有复杂度更优越的做法,见http://www.cnblogs.com/hehe54321/p/8431020.html 题意:A和B玩一个游戏,A先手。规则是两人轮流在当前数列的任意一端取走任意个数(但不能两端都取),然后把这些数的和加到 阅读全文
posted @ 2017-10-28 13:04 hehe_54321 阅读(309) 评论(0) 推荐(0)
摘要:Generating Palindromes LightOJ - 1033 题意:添加最少的字符使得给出的字符串成为回文串。输出添加的字符数。 方法:常规区间dp。ans[i][j]表示使得ans[i][j]成为回文串最少添加的字符数。如果i和j位置的字符相等那么ans[i][j]=ans[i+1] 阅读全文
posted @ 2017-10-27 22:12 hehe_54321 阅读(114) 评论(0) 推荐(0)
摘要:The Specials Menu LightOJ - 1025 题意:在给定的字符串中删去一些字符,使其成为回文串(不能全部都删)。求方案数。 方法:常规的区间dp。ans[i][j]表示在i到j的串中删去一些使得成为回文串的方案数。 对于长度为1的串,显然只有1种方法(只保留自身)。 对于长度大 阅读全文
posted @ 2017-10-27 21:19 hehe_54321 阅读(134) 评论(0) 推荐(0)
摘要:题意:将一个字符串分割成最少的字符串,使得分割出的每个字符串都是回文串。输出最小的分割数。 方法(自己的):先O(n^2)(用某个点或某个空区间开始,每次向左右扩展各一个的方法)处理出所有子串是否回文。然后常规区间dp,ans[i][j]表示i到j的子串的最小划分数。如果i到j的子串本身为回文串,那 阅读全文
posted @ 2017-10-27 20:42 hehe_54321 阅读(214) 评论(0) 推荐(0)

AmazingCounters.com