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

淮北专业网站建设今天刚刚发生的新闻

淮北专业网站建设,今天刚刚发生的新闻,人才网招聘官方网,浏览器73qcc审题: 本题需要我们找出将值为n的数分为k个数的和的所有组合,并打印 时间复杂度分析:数据个数为三位数级别,所以我们需要严格剪枝才可以使用dfs算法 思路:方法一:深度优先算法 搜索与剪枝策略: …

审题:

本题需要我们找出将值为n的数分为k个数的和的所有组合,并打印

时间复杂度分析:数据个数为三位数级别,所以我们需要严格剪枝才可以使用dfs算法

思路:方法一:深度优先算法

搜索与剪枝策略:

搜索策略:一格格的进行数据插入,利用pos定插入位置,begin定开始插入的数字

如图所示:

剪枝1:我们看到圆圈1的位置,若第一个插入了2,第二个就不能插入1了,因为21_会和前面的12_情况重合,此时我们就需要剪掉这种等效冗余情况

剪枝2:我们看到圆圈2的位置,当我们遍历到3开头时,根据剪枝1,我们只能往后面插入大于等于之前的数据的数字,而即使后面的数都是3也已经总和大于6了,所以以3开头是不可能满足条件,直接剪枝这种情况即可

剪枝3:我们如果dfs进入了不满足剪枝2的情况后才进行判断会导致有额外的时间消耗,可能导致超时,所以我们要在进入不满足剪枝2的情况之前进行剪枝。

解题:

(1)main函数

(2)dfs

剪枝1:本质上就是只能往位置中插入大于等于前一个位置的数据的数字,体现在代码中就是从begin值开始插入

剪枝2与3:首先确定剪枝2的实现,我们的当前sum加上剩下的空格中都为i的值的总和大与n,说明此时最小总和都大于n。剪掉该情况,直接返回上一层dfs。

其次确定剪枝位置,不能是for循环外面,因为在外面剪枝是属于进入了该情况才剪枝,而我们是要实现在进入剪枝情况之前就剪枝,所以要在进入dfs前进行判断

P1025 [NOIP 2001 提高组] 数的划分 - 洛谷

http://www.dtcms.com/wzjs/134963.html

相关文章:

  • 蓝色旅游网站模板网站快速有排名
  • 相城区建设局网站网络推广网站电话
  • 个人网站设计公司最大的推广平台
  • 做游戏ppt下载网站有哪些内容地推拉新app推广平台有哪些
  • 网站群建设的必要性贵州百度seo整站优化
  • 无锡网站建设选众鼎百度网盘客服24小时电话人工服务
  • 浙江网站建设网络公司网站建设
  • 做网站需要先搞目录么大连百度关键词排名
  • 网站建设朋友圈尚硅谷培训机构官网
  • 建设网站需要电脑配置网推是干什么的
  • 莒县网站建设长春模板建站代理
  • 做门户网站开发的技术搜索引擎推广案例
  • 招聘信息网58同城长尾词排名优化软件
  • 有哪些网站或者公司招募做视频的网络营销策划名词解释
  • 网站制作培训费用百度网址大全
  • 做网站应怎么缴税自建站平台
  • 网站服务器重做系统怎么做百度免费安装
  • 电商网站设计思路用html制作淘宝网页
  • 雄县网站建设公司百度app大全
  • 品牌策划经典案例上海外贸seo
  • 上蔡县做彩票网站2022年最火的电商平台
  • 签证中心网站建设什么网站推广比较好
  • 眉山手机网站建设关键词竞价排名是什么意思
  • 网络商城推广网站seo专员
  • 长沙网站建设0731中国四大软件外包公司
  • 自己找厂家做代理卖货seo优化网络推广
  • 三合一网站建设平台上海宝山网站制作
  • 成人函授大专报名官网百度手机端排名如何优化
  • 新郑市住房建设局网站seo站群优化技术
  • python做网站网络推广的常用方法