摘要:
这里使用朴素kruskal算法通过并查集实现 这里我没有使用动态数组进行存图 因为在枚举每条边的时候还有排序的时候会很麻烦 阅读全文
摘要:
回溯算法总结:http://www.cnblogs.com/wuyuegb2312/p/3273337.html#intro 贪心算法总结:http://blog.csdn.net/hero5201/article/details/51039455 动态规划算法总结:http://blog.cs... 阅读全文
摘要:
区间DP 例题:石子合并; 先使用a[i]初始化每个石子的价值 合并n个则需要先合并n-1个 子问题就是合并1~n个的最小值 则合并l长度个的最小值为合并左结点到右结点的最小值; 子问题为每个区间的合并最小值; 使用k枚举每个区间; 则有dp[i][j]=min(dp[i][j],dp[i][k... 阅读全文
摘要:
01背包 取或不取 保证只选一次 倒序枚举剩余空间 for (int i=1;i=c[i];j--) dp[j]=max(dp[j],dp[j-c[i]]+w[i]);完全背包 可取无限次 正序枚举剩余空间 for (int i=1;i=c[i];j--) for (int l=1;l<=... 阅读全文
摘要:
#include#include#include#includeusing namespace std;int a[1001],b[1001],dp[10001];int n,ans,ans1;int main (){ cin>>n; for (int i=1;i>a[i]; for (int ... 阅读全文
摘要:
二分图匹配模板 阅读全文