上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 37 下一页
摘要: 题目传送门 解题思路: 其实本题可以看作在一个01背包里,所有物品可以组成价值的所有可能,找出那些某些物品价值和恰好等于背包中某一个物品的价值的所有方案数,所以跑01背包. AC代码: 1 #include<iostream> 2 #include<cstdio> 3 #include<algori 阅读全文
posted @ 2020-02-16 23:54 Mr^Simon 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 解题思路: 先是朴素做法,f[i][j]表示字符串A前i位和字符串B前j位的最长公共子序列, 当a[i] == b[j]时,f[i][j]=f[i-1][j-1] + 1; 如果不相等,f[i][j]=max(f[i-1[j],f[i][j-1); 时间复杂度是O(nm)的,近似O(n^ 阅读全文
posted @ 2020-02-16 23:45 Mr^Simon 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 解题思路: 本题朴素求最长公共子序列即可,但是空间不够,怎么办呢? 空间不够,滚动数组来救 AC代码: 1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 string l,l1; 7 int f[2] 阅读全文
posted @ 2020-02-16 23:35 Mr^Simon 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 解题思路: 就是求一个字符串的最长回文子序列的长度,然后用整个的长度减去最长回文子序列的长度 AC代码: 1 #include<iostream> 2 #include<cstdio> 3 #include<map> 4 #include<algorithm> 5 6 using nam 阅读全文
posted @ 2020-02-16 23:33 Mr^Simon 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 解题思路: 第一问要求最长公共子序列,直接套模板就好了. 第二问要求数量,ans[i][j]表示第一个字符串前i个字符,第二个字符串前j个字符的最长公共子序列的数量 如果f[i][j]是由f[i-1][j]转移过来的,那么ans[i][j] += ans[i-1][j]. 如果是从f[i 阅读全文
posted @ 2020-02-16 23:21 Mr^Simon 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 解题思路: 先将每个文件按照占空间从小到大排序,然后跑背包,当到了某一个文件时,价值够了,那么当前文件的体积就是答案. 其实本题是可以二分答案的,但是写挂了... AC代码: 1 #include<iostream> 2 #include<cstdio> 3 #include<algor 阅读全文
posted @ 2020-02-13 00:05 Mr^Simon 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 解题思路: 一个二维限制的背包,f[i][j]表示i块钱j个时间能实现的最大愿望数. AC代码: 1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 int n,m,t,jq[101],sj[101], 阅读全文
posted @ 2020-02-13 00:00 Mr^Simon 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 解题思路: 01背包. AC代码: 1 #include<iostream> 2 #include<cstdio> 3 #include<vector> 4 5 using namespace std; 6 7 int n,sum[101],id,_min = 1999999999; 8 阅读全文
posted @ 2020-02-12 23:58 Mr^Simon 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 解题思路: 二维差分的板子题.题解传送门 AC代码: 1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 int n,k,cf[1004][1004],ans,a[1004][1004]; 7 8 in 阅读全文
posted @ 2020-02-12 23:57 Mr^Simon 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 解题思路: 一个披着外壳的完全背包. AC代码: 1 #include<iostream> 2 #include<cstdio> 3 4 using namespace std; 5 6 long long v,n,a[30],f[10001]; 7 8 int main() { 9 s 阅读全文
posted @ 2020-02-12 23:53 Mr^Simon 阅读(108) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 37 下一页