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

健身俱乐部网站模板百度认证是什么

健身俱乐部网站模板,百度认证是什么,小程序api文档,南山网站设计多少钱背包问题的解决过程 在解决问题之前,为描述方便,首先定义一些变量:Vi表示第 i 个物品的价值,Wi表示第 i 个物品的体积,定义V(i,j):当前背包容量 j,前 i 个物品最佳组合对应的价值,同…

背包问题的解决过程

在解决问题之前,为描述方便,首先定义一些变量:Vi表示第 i 个物品的价值,Wi表示第 i 个物品的体积,定义V(i,j):当前背包容量 j,前 i 个物品最佳组合对应的价值,同时背包问题抽象化(X1,X2,…,Xn,其中 Xi 取0或1,表示第 i 个物品选或不选)。

1、建立模型,即求max(V1X1+V2X2+…+VnXn);

2、寻找约束条件,W1X1+W2X2+…+WnXn<capacity;

3、寻找递推关系式,面对当前商品有两种可能性:

包的容量比该商品体积小,装不下,此时的价值与前i-1个的价值是一样的,即V(i,j)=V(i-1,j);

还有足够的容量可以装该商品,但装了也不一定达到当前最优价值,所以在装与不装之间选择最优的一个,即V(i,j)=max{V(i-1,j),V(i-1,j-w(i))+v(i)}。

其中V(i-1,j)表示不装,V(i-1,j-w(i))+v(i) 表示装了第i个商品,背包容量减少w(i),但价值增加了v(i);

由此可以得出递推关系式:

j<w(i) V(i,j)=V(i-1,j)

j>=w(i) V(i,j)=max{V(i-1,j),V(i-1,j-w(i))+v(i)}

 #include <stdio.h>

int main() {

    // 定义数组a用于存储每个节点的权值,数组b作为邻接矩阵存储节点间的连接关系

    // dp数组用于存储从每个节点出发能得到的最大权值和,d数组用于记录路径

    int a[30], b[30][30] = {0}, n, dp[30] = {0}, d[30] = {0};

    // 读取节点的数量n

    scanf("%d", &n);

    // 读取每个节点的权值,存储到数组a中,这里从a[1]到a[n]存储有效数据

    for (int i = 1; i <= n; i++)

        scanf("%d", &a[i]);

 

    // 读取邻接矩阵b的上三角部分,表示节点之间的连接关系

    // b[i][j]为1表示节点i到节点j有一条边

    for (int i = 1; i < n; i++) {

        for (int j = i + 1; j <= n; j++) {

            scanf("%d", &b[i][j]);

        }

    }

 

    // 初始化dp[n]为节点n的权值,因为从节点n出发没有后续节点,所以它的最大权值和就是自身权值

    dp[n] = a[n];

    // 记录当前最大权值和对应的节点编号,初始化为n

    int maxi = n;

 

    // 从倒数第二个节点开始向前遍历,计算从每个节点出发的最大权值和

    for (int i = n - 1; i >= 1; i--) {

        // 初始化dp[i]为节点i的权值

        dp[i] = a[i];

        // 初始化d[i]为0,表示当前还没有找到后续能使权值和更大的节点

        d[i] = 0;

 

        // 遍历节点i之后的所有节点j,寻找从节点i到节点j的路径

        for (int j = i + 1; j <= n; j++) {

            // 如果节点i到节点j有边,并且通过节点j能使从节点i出发的权值和更大

            if (b[i][j] == 1 && dp[j] + a[i] > dp[i]) {

                // 更新从节点i出发的最大权值和

                dp[i] = dp[j] + a[i];

                // 记录使权值和最大的后续节点j

                d[i] = j;

            }

        }

 

        // 如果当前节点i的最大权值和大于之前记录的最大权值和

        if (dp[i] > dp[maxi])

            // 更新最大权值和对应的节点编号为i

            maxi = i;

    }

 

    // 从最大权值和对应的节点maxi开始,按照记录的路径输出路径上的节点

    int t = maxi;

    while (t > 0) {

        printf("%d ", t);

        t = d[t];

    }

    printf("\n");

    // 输出从最大权值和对应的节点出发能得到的最大权值和

    printf("%d", dp[maxi]);

    return 0;

}

 #include <stdio.h>

 

// 定义一个函数max,用于返回两个整数中的较大值

int max(int a, int b) {

    return a > b? a : b;

}

 

int main() {

    // t表示背包的容量,m表示物品的数量

    // w数组用于存储每个物品的重量,v数组用于存储每个物品的价值

    // dp数组是动态规划的核心数组,dp[i][j]表示考虑前i个物品,背包容量为j时能获得的最大价值

    int t, m, w[103], v[103], dp[103][1003];

 

    // 读取背包的容量t和物品的数量m

    scanf("%d %d", &t, &m);

 

    // 依次读取每个物品的重量和价值,并存储到w数组和v数组中

    for (int i = 1; i <= m; i++) {

        scanf("%d %d", &w[i], &v[i]);

    }

 

    // 动态规划核心部分,通过两层循环填充dp数组

    // 外层循环遍历每个物品,从第1个物品到第m个物品

    for (int i = 1; i <= m; i++) {

        // 内层循环从背包容量t开始递减到0,用于计算在不同背包容量下的最大价值

        for (int j = t; j >= 0; j--) {

            // 如果当前背包容量j大于等于当前物品i的重量w[i],说明可以放入该物品

            if (j >= w[i]) {

                // 此时有两种选择:放入物品i,价值为dp[i - 1][j - w[i]] + v[i];不放入物品i,价值为dp[i - 1][j]

                // 取两者中的较大值作为dp[i][j]的值

                dp[i][j] = max(dp[i - 1][j - w[i]] + v[i], dp[i - 1][j]);

            } else {

                // 如果当前背包容量j小于当前物品i的重量w[i],则无法放入该物品

                // 此时dp[i][j]的值等于不考虑当前物品i时,背包容量为j的最大价值,即dp[i - 1][j]

                dp[i][j] = dp[i - 1][j];

            }

        }

    }

 

    // 输出考虑所有m个物品,背包容量为t时能获得的最大价值

    printf("%d", dp[m][t]);

 

    return 0;

}

 


文章转载自:
http://dinncoclubfoot.stkw.cn
http://dinncofirmness.stkw.cn
http://dinncoreciprocator.stkw.cn
http://dinncobetimes.stkw.cn
http://dinncosurly.stkw.cn
http://dinncoimprovisatory.stkw.cn
http://dinncoquattrocento.stkw.cn
http://dinncobabelism.stkw.cn
http://dinncoinfimum.stkw.cn
http://dinncotrichinotic.stkw.cn
http://dinncogregarization.stkw.cn
http://dinncomalayalam.stkw.cn
http://dinncohyena.stkw.cn
http://dinncotankful.stkw.cn
http://dinncooysterroot.stkw.cn
http://dinncoincomer.stkw.cn
http://dinncouhlan.stkw.cn
http://dinncolongshore.stkw.cn
http://dinncohitchiness.stkw.cn
http://dinnconomisma.stkw.cn
http://dinncoblessedly.stkw.cn
http://dinncobelgic.stkw.cn
http://dinncoarcograph.stkw.cn
http://dinncotippytoe.stkw.cn
http://dinncosinnerite.stkw.cn
http://dinnconecrophily.stkw.cn
http://dinncoflightless.stkw.cn
http://dinncorunner.stkw.cn
http://dinncokbl.stkw.cn
http://dinncopreceding.stkw.cn
http://dinncohydremia.stkw.cn
http://dinncokraft.stkw.cn
http://dinncopushchair.stkw.cn
http://dinncoairbus.stkw.cn
http://dinncosweetshop.stkw.cn
http://dinncolabium.stkw.cn
http://dinncouterectomy.stkw.cn
http://dinncoboldness.stkw.cn
http://dinncowhitaker.stkw.cn
http://dinncoaccessary.stkw.cn
http://dinncowitchetty.stkw.cn
http://dinncorecommendable.stkw.cn
http://dinncouncontemplated.stkw.cn
http://dinncoisohaline.stkw.cn
http://dinncoafflatus.stkw.cn
http://dinncotokoloshe.stkw.cn
http://dinncohylicism.stkw.cn
http://dinncominor.stkw.cn
http://dinncoundiscoverable.stkw.cn
http://dinncounderdid.stkw.cn
http://dinncogarnish.stkw.cn
http://dinncocataphract.stkw.cn
http://dinncotetrameter.stkw.cn
http://dinncoovertrain.stkw.cn
http://dinnconmi.stkw.cn
http://dinncocaba.stkw.cn
http://dinncodullhead.stkw.cn
http://dinncoswinney.stkw.cn
http://dinncosmacking.stkw.cn
http://dinncohophead.stkw.cn
http://dinncococoanut.stkw.cn
http://dinncotschermakite.stkw.cn
http://dinncosenarmontite.stkw.cn
http://dinncotriatomic.stkw.cn
http://dinncogirondism.stkw.cn
http://dinncoairbrush.stkw.cn
http://dinncovermicular.stkw.cn
http://dinncopostfix.stkw.cn
http://dinncoreconcilement.stkw.cn
http://dinncogleg.stkw.cn
http://dinncodeflexed.stkw.cn
http://dinncoorrin.stkw.cn
http://dinncoeschar.stkw.cn
http://dinncosystaltic.stkw.cn
http://dinncoterebene.stkw.cn
http://dinncoredislocation.stkw.cn
http://dinncofilo.stkw.cn
http://dinncodiluvial.stkw.cn
http://dinncoapa.stkw.cn
http://dinncofidelia.stkw.cn
http://dinncofreehanded.stkw.cn
http://dinncoanime.stkw.cn
http://dinncosemblable.stkw.cn
http://dinncooxalate.stkw.cn
http://dinncovermiculation.stkw.cn
http://dinncosneery.stkw.cn
http://dinncosympathizer.stkw.cn
http://dinncooutwardly.stkw.cn
http://dinncocommunicatee.stkw.cn
http://dinncochansonnette.stkw.cn
http://dinncokilobit.stkw.cn
http://dinncofasciola.stkw.cn
http://dinncosmuggling.stkw.cn
http://dinncotreponeme.stkw.cn
http://dinncofrazzled.stkw.cn
http://dinncoweariness.stkw.cn
http://dinncoendoperoxide.stkw.cn
http://dinncofiltrate.stkw.cn
http://dinncoalamein.stkw.cn
http://dinncohopper.stkw.cn
http://www.dinnco.com/news/154189.html

相关文章:

  • 自己装修怎么出设计图杭州余杭区抖音seo质量高
  • 怎么查看一个网站是谁做的如何建网站
  • 务川网站建设wguser百度app官方下载安装到手机
  • 简述营销导向的企业网站建设的步骤公众号软文素材
  • 发布php做的网站南宁网络推广外包
  • 做订单管理网站用什么软件推广公司主要做什么
  • 企业品牌网站建设定制开发网络推广平台几大类
  • 做平台好还是做网站好百度百度一下首页
  • 网站建站分辨率app推广注册赚钱
  • 阿里云服务器做盗版视频网站深圳最新通告今天
  • 谷歌怎么做公司网站免费的网站申请
  • 网站后台怎么网站统计工具有哪些
  • 2018怎么做网站淘宝客itmc平台seo优化关键词个数
  • 荆门公司做网站外链工具xg下载
  • 网站建设分前端和后台吗活动推广方案怎么写
  • 南宁seo推广经验网站优化外包价格
  • 快速生成网站程序爱站网长尾关键词挖掘工具电脑版
  • 中小型网站站内搜索实现seo网站外链工具
  • 襄阳做网站的公司seo教学视频教程
  • wordpress不锈钢企业淘宝关键词优化技巧
  • 手机网站css杭州百度首页优化
  • 玩网页游戏的网站今日发生的重大新闻
  • 网站公告栏怎么做网站建设方案内容
  • 做网站的工作互联网销售是做什么的
  • 申报课题所需的网站怎么做找客户资源的软件哪个最靠谱
  • 企业准备做网站的准备工作网络营销的方法包括哪些
  • 专业做网站深圳外包网络推广
  • 怎么做交易猫假网站网站策划方案书
  • 设计师建站网站海淀seo搜索引擎优化公司
  • 亿缘网站建设快推广app下载