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

制作一个收费网站要多少钱seo和sem

制作一个收费网站要多少钱,seo和sem,仿业务网站源码,wordpress资讯模板混合背包是指多种背包模型的组合与转化。 下面通过题目加深理解。 题目一 测试链接:1742 -- Coins 分析:这道题可以通过硬币的个数将其转化为01背包,完全背包和多重背包。如果硬币的个数是1个,则是01背包;如果硬币的…

混合背包是指多种背包模型的组合与转化。

下面通过题目加深理解。

题目一

测试链接:1742 -- Coins

分析:这道题可以通过硬币的个数将其转化为01背包,完全背包和多重背包。如果硬币的个数是1个,则是01背包;如果硬币的面值×硬币的个数大于当前需要找零的数额,则是完全背包;否则是多重背包。对于不同的背包进行不同的可能性展开,最后统计,即可得到答案。代码如下。

#include <iostream>
using namespace std;
int n, m;
int number, ans_index = 0;
int coin[100][2];
bool dp[100001];
int ans[100];
int main(void){scanf("%d%d", &n, &m);while (!(n == 0 && m == 0)){number = 0;for(int i = 0;i < n;++i){scanf("%d", &coin[i][0]);}for(int i = 0;i < n;++i){scanf("%d", &coin[i][1]);}for(int i = 1;i <= m;++i){dp[i] = false;}dp[0] = true;for(int i = 0;i < n;++i){if(coin[i][1] == 1){for(int j = m;j >= 0 && j - coin[i][0] >= 0;--j){dp[j] |= dp[j-coin[i][0]];}}else if(coin[i][0] * coin[i][1] > m){for(int j = 0;j <= m;++j){if(j - coin[i][0] >= 0){dp[j] |= dp[j-coin[i][0]];}}}else{for(int j = m;j >= 0;--j){for(int k = 1;k <= coin[i][1] && j - k * coin[i][0] >= 0;++k){dp[j] |= dp[j-k*coin[i][0]];}}}}for(int i = 1;i <= m;++i){if(dp[i]){++number;}}ans[ans_index++] = number;scanf("%d%d", &n, &m);}for(int i = 0;i < ans_index;++i){printf("%d\n", ans[i]);}return 0;
}

其中,求dp数组循环中,i为在下标0~i的物品中取。当然,这道题其实可以直接将其当作一个多重背包,二进制优化后转化为01背包进行求解。代码如下。

#include <iostream>
using namespace std;
int n, m;
int data_index, temp, number, ans_index = 0, coin_num;
int coin[100];
bool dp[100001];
int data[1001];
int ans[100];
int main(void){scanf("%d%d", &n, &m);while (!(n == 0 && m == 0)){data_index = 0;number = 0;for(int i = 0;i < n;++i){scanf("%d", &coin[i]);}for(int i = 0;i < n;++i){scanf("%d", &coin_num);temp = 1;while (coin_num >= temp){data[data_index++] = temp * coin[i];coin_num -= temp;temp *= 2;}if(coin_num > 0){data[data_index++] = coin_num * coin[i];}}for(int i = 1;i <= m;++i){dp[i] = false;}dp[0] = true;for(int i = 0;i < data_index;++i){for(int j = m;j >= 0 && j - data[i] >= 0;--j){dp[j] |= dp[j-data[i]];}}for(int i = 1;i <= m;++i){if(dp[i]){++number;}}ans[ans_index++] = number;scanf("%d%d", &n, &m);}for(int i = 0;i < ans_index;++i){printf("%d\n", ans[i]);}return 0;
}

http://www.mmbaike.com/news/91669.html

相关文章:

  • 福州做网站设计网络推广的优化服务
  • 动态做网站成人职业技术培训学校
  • 中国建设银行网站类型分析排名首页服务热线
  • 网页设计价格影响因素海南seo
  • 长春市长春网站建设网长沙网站优化推广方案
  • 关闭网站怎么不保存我做的更改百度app安装下载
  • 怎么自己学做网站seo诊断
  • 太原做淘宝网站的郑州seo管理
  • 郑州北环网站建设培训如何查询网站收录情况
  • 做网站要有自己服务器吗上海专业的seo推广咨询电话
  • 做的网站如何改标题百度数字人内部运营心法曝光
  • 培训网站源码wordpress企业员工培训课程有哪些
  • 直播平台开发方案宁波优化推广选哪家
  • 做系统吧收藏的网站做没了北京网站推广排名
  • 做公益网站又什么要求搜索引擎排名优化技术
  • 东莞网站制作建设收费列表网推广效果怎么样
  • 网站建设实验总结建站优化
  • html网站的规划与建设优化公司排名
  • php站点搭建优化技术
  • 上海建设工程招投标网站全网引流推广 价格
  • 网站广告用ps如何做电商运营培训哪个机构好
  • 淘宝做收藏的网站天津短视频seo
  • 外贸出口网站建设快手seo软件下载
  • 织梦做的网站怎么添加关键词2022近期重大新闻事件10条
  • 建设部网站查资质6不能搜的超级恶心的关键词
  • 付费阅读小说网站开发建设源码武汉百度推广开户
  • 怎么做秒赞网站2022年最近十大新闻
  • 用手机做网站视频宁波seo关键词优化教程
  • 北京做网站的外包公司百合seo培训
  • 响应式网站价格p2p万能搜索引擎