写在前面
在我写这篇博客时,我已经搭上了前往大二下学期的火车,长达20小时的车程,而且我是上铺,干啥啥不成,但这仍然阻止不了我对算法的热情,所以,我写下了这篇博客(其实是下的剧看完了,不知道干什么,而且这是我第一次用手机写博客,格式什么的就不重要了).
动态规划
什么时候动态规划?最简单的动态规划应该是斐波那契数列,斐波那契数列后一个结果不断调用之前的结果,从而分而治之,这就是动态规划的思想
```c++
include<bits/stdc++.h>
using namespace std;
int main()
{
int fibonacci[100];
fibonacci[0]=1;
fibonacci1=1;
for(int i=2;i<100;i++)
fibonacci[i]=fibonacci[i-1]+fibonacci[i-2];
for(int i=0;i<100;i++)
cout<<fibonacci[i];
}
##背包问题
说是有个包,容量设其为storage,现在有一些商品,它们的价值和重量为value和weight,现在问如何用包的空间装最有价值的物品。
我们设一个数组dp[][]
```c++
#include<bits/stdc++.h>
using namespace std;
int w[105];
int v[105];
int dp[105][105];
int main()
{
int n,m;
cin<<n;
for(int i=1;i<n;i++)
cin>>w[i]>>v[i];
for(int i=i;i<=n;i++)
for(int j=1;j<=m;j++)
if(j<w[i])dp[i][j]=dp[i-1][j];
else dp[i][j]=max(dp[i-1][j],dp[i-1][j-w[i]]+v[i]);
cout<<dp[n][m];
}
最后一次更新于2021-03-03
你就是学这个的?我电脑坏了来修一下谢谢(。•ˇ‸ˇ•。)
By 汪墨涵 at March 2nd, 2021 at 06:51 pm.
@汪墨涵
电脑坏了找我友商啊
By 6 at March 2nd, 2021 at 08:13 pm.
太惨了我,明天补祥解
By admin at March 1st, 2021 at 10:33 pm.