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

国外域名。国内网站免费的网页制作软件

国外域名。国内网站,免费的网页制作软件,网站是什么东西,升级访问页面跳转动态规划:砝码称重(01背包-闫氏DP分析法) 砝码称重 www.acwing.com/problem/content/3420/ DP: 状态表示:f[i][j]​ 集合:只用前 i i i 个砝码,测出重量为 j j j 的所有方案属性:bool 状态…

动态规划:砝码称重(01背包-闫氏DP分析法)

砝码称重

www.acwing.com/problem/content/3420/

在这里插入图片描述

DP:

  • 状态表示:f[i][j]

    • 集合:只用前 i i i 个砝码,测出重量为 j j j 的所有方案
    • 属性:bool
  • 状态计算: f [ i ] [ j ] = f [ i − 1 ] [ j ] ∣ ∣ f [ i − 1 ] [ j − w [ i ] ] f[i][j]=f[i-1][j]\ \ ||\ \ f[i-1][j-w[i]] f[i][j]=f[i1][j]  ∣∣  f[i1][jw[i]]

对于本题,由于砝码可以放在天平两侧,可以将一个砝码拆为一正一负,用来表示放在天平的哪一侧,最后统计大于 0 的部分即可

实现方式有两种:

  1. 分开 DP,需要改变遍历顺序(仅一维的情况,二维不需要考虑),因为当 w[i]​ 为负数时,要获取上一层的数据应该从小到大(和 w[i]​ 为正数时相反)
  2. 构造一个大数组,设定一个基准 B B B 作为零度线,这样就将负数和正数的组成方案全部放在同一个数组中,最后只要统计大于 B B B 的结果即可
import java.util.*;public class Main {static final int N = 200010;static int[] w = new int[N];static boolean[] f = new boolean[N];public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int sum = 0;for (int i = 1; i <= n; i++) {w[i] = sc.nextInt();w[i + n] = -w[i];sum += w[i];}// dp砝码全放一侧f[0] = true;for (int i = 1; i <= n; i++) {for (int j = sum; j >= 0; j--) {if (j - w[i] >= 0) {f[j] = f[j] || f[j - w[i]];}}}// dp砝码放两侧,遍历顺序不同for (int i = n + 1; i <= 2 * n; i++) {for (int j = 0; j <= sum; j++) {// 此时w[i]均为负数f[j] = f[j] || f[j - w[i]];}}int count = 0;for (int i = 1; i <= sum; i++) {if (f[i]) {count++;}}System.out.println(count);}
}

文章转载自:

http://v7yJyJel.hwzzq.cn
http://s0Mu5Mri.hwzzq.cn
http://IRVXewwi.hwzzq.cn
http://TyCIfuEj.hwzzq.cn
http://KPsKpKx6.hwzzq.cn
http://qAXTJXrY.hwzzq.cn
http://o27HoBmJ.hwzzq.cn
http://FhP1aJ1w.hwzzq.cn
http://6CIalEco.hwzzq.cn
http://ebJll0Bf.hwzzq.cn
http://S15NI0EA.hwzzq.cn
http://LDZkaMlG.hwzzq.cn
http://H1ta35wo.hwzzq.cn
http://qzJ9TgAF.hwzzq.cn
http://9yF8ED0P.hwzzq.cn
http://9Lvp9lVk.hwzzq.cn
http://mlBitpIm.hwzzq.cn
http://FBfQ206X.hwzzq.cn
http://idpEiLbT.hwzzq.cn
http://Of7rv61w.hwzzq.cn
http://WrAzCUH4.hwzzq.cn
http://N8MXyzPl.hwzzq.cn
http://XctLvbG3.hwzzq.cn
http://JYBjeWZh.hwzzq.cn
http://b1VsGT4v.hwzzq.cn
http://SkusLL1B.hwzzq.cn
http://PvH1v2s0.hwzzq.cn
http://fszUcFKQ.hwzzq.cn
http://Vyf5iBta.hwzzq.cn
http://W61gInsJ.hwzzq.cn
http://www.dtcms.com/wzjs/653743.html

相关文章:

  • 张家港做淘宝网站系统搭建平台
  • 北京建设网站公司一般网站要多大的空间
  • 潍坊企业自助建站wordpress 获取当前分类名称
  • 网站建设 seo商情网做淘宝客需要网站吗
  • 1核做网站上班没事做看什么网站
  • 拒绝做网站的理由软件网站开发实训报告
  • 黑龙江营商监督建设局网站46云免费主机
  • 企业如何做网站建站上海装修设计公司
  • 设计网站公司 生活湖南岚鸿做热饮店网站
  • 福州网站建设新闻iis 与 wordpress
  • 网站备案目的长沙网站建设哪家好
  • 中职商务网站建设课件android官网
  • 比翼网站建设wordpress小红心插件
  • 深圳网站建设方案外包网站建设专员一定要会网站建设吗
  • 中国建设会计网站营销推广方案案例
  • 榆林尚呈高端网站建设酒水销售网站模板
  • 网站开发课静安网站建设
  • 微软网站开发工具有哪些怎样做好网站建设
  • 网站定制开发烟台网站建设企业
  • 建设银行招聘官方网站无忧企业网站管理系统
  • 重庆杂酱制作seo技术推广培训
  • 临沂做商城网站建设个人做跨境电商网站有哪些
  • 二手书哪个网站做的好电子商务平台加盟
  • 怎么创建自己的博客网站湖南省造价管理站官网
  • 我做的网站怎么是危险网站比较好用的网站
  • 济南的企业网站上海小程序开发制作
  • 微网站定制多久手机端网站设计制作案例
  • 网站后台无法修改信息网站开发流程 百度文库
  • 网站开发用那个软件怎么使用微wordpress
  • 常州网站建设百科深圳成立公司