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

网站建设+临沂企业做网站需要注意事项

网站建设+临沂,企业做网站需要注意事项,创办一个网站要多少钱,南宁百度网站建设注意事项: 本题是"动态规划—01背包"的扩展题,优化思路不多赘述,dp思路会稍有不同,下面详细讲解。 题目: 给定 N个正整数 A1,A2,…,AN,从中选出若干个数,使它们的和为 M,…

注意事项:
本题是"动态规划—01背包"的扩展题,优化思路不多赘述,dp思路会稍有不同,下面详细讲解。

题目:
给定 N个正整数 A1,A2,…,AN,从中选出若干个数,使它们的和为 M,求有多少种选择方案。

输入格式
第一行包含两个整数 N和 M。
第二行包含 N个整数,表示 A1,A2,…,AN。

输出格式
包含一个整数,表示可选方案数。

数据范围
1≤N≤100,
1≤M≤10000,
1≤Ai≤1000,
答案保证在 int 范围内。

输入:
4 4
1 1 2 2
输出:
3
#include <cmath>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;const int N = 10010;
int n, m;
int v[N], f[N], s[N][N];//基础版二维
void base() {s[0][0] = 1;for (int i = 1; i<=n; i++) {for (int j = 0; j<=m; j++) {s[i][j] += s[i-1][j];if (j >= v[i]) s[i][j] += s[i-1][j-v[i]];}}cout << s[n][m];
}//01背包优化,一维滚动数组
void op() {f[0] = 1;for (int i = 1; i<=n; i++) {for (int j = m; j>=0; j--) {f[j] += f[j-v[i]];}}cout << f[m];
}int main() {cin >> n >> m;for (int i = 1; i<=n; i++) cin >> v[i];// base();op();return 0;
}

思路:
经典的y式dp法

1.状态表示
f[i][j]: 表示从前i个数中选,总和刚好为j的方案,属性为Count。

2.状态计算
以 选择/不选择 第i个物品为划分,
1.当不选择第i个物品时:
f[i][j] += f[i-1][j]
2.当选择第二个物品时:
f[i][j] += f[i-1][j-v[i]]

切记我们这里f[i][j]中记录的是前i个数中总和为j的方案总数
是在计算数量,也就是+=。

还有就是初始步骤,f[0][0]为1,
因为从前0个数中选总和为0也是一种方案。

声明:
算法思路来源为y总,详细请见https://www.acwing.com/
本文仅用作学习记录和交流

http://www.sczhlp.com/news/63447/

相关文章:

  • 政务服务 网站 建设方案杭州高端网站建设公司哪家好
  • 网站ftp的所有权归谁新网站怎样做好外链
  • 怎么在别人网站做跳转商派商城网站建设
  • 企业网站开发公司有哪些php网站案例
  • 茶叶手机网站如何查询网站的建设商
  • 专业沈阳网站制作ppt设计报价
  • 苏州高端网站设计机构深圳网站制作需要多少钱
  • 网站设计的基本知识织梦网站入侵
  • ui交互设计作品wordpress数据库优化
  • 九江网站设计wordpress插件语言包
  • ps网站头部图片住房城乡住房和城乡建设部网站首页
  • sqlite做网站洛阳做网站哪家好
  • 深圳 商城 网站建设义乌网站网站建设
  • 深圳市文刀网站建设免费推广网站推荐
  • 商务网站的建设阶段包括装修室内设计培训学校
  • 响应式网站用什么开发的网络设计案例题
  • 网站站群建设进度wordpress 中介
  • 网站平台建设心得iis怎么添加网站
  • 西安网站优化指导有了公网ip如何做网站
  • 手把手教你优化网站南安淘宝网站建设
  • 曹妃甸建设工程招投标网站做引流网站怎么赚钱赚谁的钱
  • 后台网站地图电子商务网站建设试卷及答案
  • 怎么看网站开发语言是哪种化州网站建设公司
  • 工程行业网站大型网页游戏排行榜
  • 怎么做一个网站送给女朋友网店推广引流
  • 专做女鞋的网站代发广州网站建设公司 网络服务
  • 网站做推广被禁止访问了野望王绩
  • 武威网站制作公司电话多少公司域名查询
  • o2o网站 方案jsp网站维护
  • vps建站教程网站底部备案