当前位置: 首页 > news >正文

怎么搭建一个简单的网站wordpress官方程序下载

怎么搭建一个简单的网站,wordpress官方程序下载,深圳网站建设知名公司,营销网站怎么做合适文章目录 一、二维费用的背包问题二、潜水员三、机器分配四、开心的金明五、有依赖的背包问题 一、二维费用的背包问题 题目链接 #include<iostream> #include<algorithm> using namespace std; const int M 110; int n,m,kg; int f[M][M];int main() {cin >…

文章目录

    • 一、二维费用的背包问题
    • 二、潜水员
    • 三、机器分配
    • 四、开心的金明
    • 五、有依赖的背包问题

一、二维费用的背包问题

题目链接
在这里插入图片描述

#include<iostream>
#include<algorithm>
using namespace std;
const int M = 110;
int n,m,kg;
int f[M][M];int main()
{cin >> n >> m >> kg;for(int i = 0;i < n;i ++){int v,M,w;cin >> v >> M >> w;for(int j = m;j >= v;j --)for(int k = kg;k >= M;k --){f[j][k] = max(f[j][k], f[j - v][k - M] + w);}}cout << f[m][kg];return 0;
}

二、潜水员

题目链接
在这里插入图片描述
题解来源:小呆呆 ,

这个题相较于二维费用的背包问题,稍稍有一点改变,二维费用的背包模板是体积不超过V,重量不超过M,但是这个题是体积至少为V,重量至少为M。

对比两题的思路,二维费用的背包问题,求的是不能超过体积V,重量M的情况下,能拿到价值的最大值。而本题是至少需要体积V,重量M的情况下,能拿到价值的最小值。就拿体积来说,至少需要多少体积,也就是说有体积比需要的体积大的物品还是能用得到,例如f[3][5],至少需要3个体积,5个重量,求能拿到价值的最小值,现在只有一个物品,体积是4,重量是4,价值w,它说至少需要3个体积,那么体积是4还是可以用到,只是多了1个体积没用占着而已,不影响其价值。因此若用了这个物品,则变成了求f[0][1] + w,表示体积已经不再需求了,只需要0个体积即可

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;int n,m,k;
const int M = 25, N = 82;
int f[M][N];
const int INF = 0x3f3f3f3f;int main()
{cin >> m >> n;cin >> k;memset(f, 0x3f, sizeof f);f[0][0] = 0;for(int i = 1;i <= k;i ++){int a,b,c;cin >> a >> b >> c;for(int j = m;j >= 0;j --)for(int x = n;x >= 0;x --){f[j][x] = min(f[j][x], f[max(0,j - a)][max(0, x - b)] + c);}}cout << f[m][n];return 0;
}

三、机器分配

题目链接
在这里插入图片描述
在这里插入图片描述

#include<iostream>
#include<algorithm>
using namespace std;int n,m;
const int N = 12, M = 18;
int f[N][M];
int ne[M];
int w[N][M];
int way[M];int main()
{cin >> n >> m;for(int i = 1;i <= n;i ++)for(int j = 1;j <= m;j ++)cin >> w[i][j];for(int i = 1;i <= n;i ++){for(int j = 0;j <= m;j ++){for(int k = m;k >= j;k --)f[i][k] = max(f[i][k], f[i - 1][k - j] + w[i][j]);}}cout << f[n][m] << endl;int j = m;for(int i = n;i >= 1;i --)for(int k = 0;k <= m;k ++)if(f[i][j] == f[i - 1][j - k] + w[i][k]){way[i] = k;j -= k;break;}for(int i = 1;i <= n;i ++) cout << i << " " << way[i] << endl;return 0;
}

四、开心的金明

在这里插入图片描述

这个题很容易,就是一个01背包问题

#include<iostream>
#include<algorithm>
using namespace std;
const int N = 30100;
int n,m;
int f[N];int main()
{cin >> n >> m;for(int i = 1;i <= m;i ++){int v,w;cin >> v >> w;for(int j = n;j >= v;j --)f[j] = max(f[j], f[j - v] + v * w);}cout << f[n];return 0;
}

五、有依赖的背包问题

题目链接
在这里插入图片描述
在这里插入图片描述

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
const int N = 110;
int head[N],e[N],ne[N],idx;
int n,m;
int v[N],w[N],p;
bool st[N];
int f[N][N];void add(int a,int b)
{e[idx] = b, ne[idx] = head[a], head[a] = idx ++;
}void dfs(int u)
{for(int i = head[u]; ~i;i = ne[i]){int son = e[i];dfs(e[i]);for(int j = m - v[u];j >= 0;j --){for(int k = 0;k <= j;k ++)f[u][j] = max(f[u][j], f[u][j - k] + f[son][k]);}}for(int i = m;i >= v[u];i --) f[u][i] = f[u][i - v[u]] + w[u];for(int i = 0;i < v[u];i ++) f[u][i] = 0;
}int main()
{cin >> n >> m;memset(head, -1,sizeof head);int root;for(int i = 1;i <= n;i ++){cin >> v[i] >> w[i] >> p;if(p == -1) {   root = i;continue;}add(p, i);st[i] = true;}dfs(root);cout << f[root][m];return 0;
}
http://www.yayakq.cn/news/271053/

相关文章:

  • 没建网站 备案如何建立自己的网站去推广
  • 哪个网站做调查问卷赚钱WordPress开源项目
  • 杭州建设主管部门的网站沧州市青县建设局网站
  • 云龙徐州网站开发私密浏览器免费观看
  • 专业做包装设计网站应用商店下载安装
  • 深圳网站建设主页wordpress素材网
  • 用php开发网站教程青岛 网站科技公司
  • 绍兴seo网站推广定西临洮网站建设
  • 长春教做网站带维护的培训机构北京装修公司口碑排行
  • 做国际网站的流程网站建设创新能力痛点
  • 郑州网站建设外贸电商平台是做什么
  • 个人 邮箱 含网站 域名wordpress如何恢复默认主题
  • 网站与维护做网站哪
  • 四川可以做宣传的网站外贸网站建设推广费用
  • 网站开发交接免费设计logo标志
  • 深圳招聘网站建大网络
  • 咨询学校网站开发费用深圳外包软件开发
  • 哪里做网站好怎样更换网站cms
  • 网站建设培训达内免费高清图片素材网站有哪些
  • 青岛网站建设系统为女朋友做的网站
  • 医院网站建设方案计划书网站开发硬件成本
  • 美食网站的设计与制作代码学网站建设维护
  • 好的网站制作网站免费服务器有哪些
  • 淘宝客单页网站wordpress qq 注册
  • 怎么不花钱建立网站网站建设经验分享
  • 做电影网站多少钱足球直播在线直播观看免费cctv5
  • 正规的合肥网站建设价格外贸手机商城网站建设 深圳
  • 接兼职建设网站wordpress 主题 2016
  • 域名大全免费网站网站建设diy
  • 广州网站建设流程手机怎么制作自己的网站