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

蓝桥杯备考:DFS剪枝之数的划分

这道题和组合型枚举差不多,比如我们从第一个数开始填,到第二个数的时候,21明显是重复了,我们就没必要继续往下递归了,这个叫剪掉等效冗余分支,然后还有就是,比如我们2开始的枝头,222,223,224,225,我们222的时候就已经比5大了,这时候我们再递归算后面的就没用了,我们3开始的时候,344,345肯定是更大的了 所以这条就是我们的可行性剪枝,我们把后面的分支全部剪掉就行了

#include <iostream>
using namespace std;
int n,k;
int path;
int cnt;
void dfs(int pos,int begin)
{
	if(pos == k)
	{
	    if(path == n)
         cnt++;
		 return;	    
	}
	for(int i = begin;i<=n;i++)
	{
		if(path+i*(k-pos)>n) return;
		path+=i;
		dfs(pos+1,i);
		path-=i;
		
	}
}

int main()
{
	cin >> n >> k;
	dfs(0,1);
	
	cout << cnt << endl;
	
	
	
	
	
	
	
	
	return 0;
}

相关文章:

  • React 组件基础介绍
  • 新一代跨境电商ERP系统:从订单到发货的全流程自动化管理
  • Git GitHub基础
  • Web Worker 使用教程
  • 执行yum -y install npt 报错解决
  • linux ununtu通过nginx-1.6.2.tar.gz安装nginx并安装在自定义目录XXX下 的步骤
  • 示波器探头衰减值:简单来说就是“信号缩小器
  • docker启动elasticsearch,挂载文件报错:Device or resource busy
  • ssh配置 远程控制 远程协作 github本地配置
  • 蓝桥杯备赛-前缀和-可获得的最小取值
  • 信号处理:互相关函数
  • 蓝桥与力扣刷题(蓝桥 特别数的和)
  • 论文:KernelBench: Can LLMs Write Efficient GPU Kernels?
  • centos虚拟机无法安装工具
  • Android开发奇葩bug:布局宽高不自动自适应了
  • 月份天数总结
  • 【考试大纲】高级系统架构设计师考试大纲
  • 【Rabbitmq篇】高级特性----TTL,死信队列,延迟队列
  • 连锁管理系统的五大核心功能及系统设计
  • Python数字图像处理:直方图均衡化
  • 设计师个人网站源码/seo服务是什么
  • 网站模板怎么做的/郴州seo快速排名
  • 手机网页制作与网站建设/百度网址大全简单版
  • 简单html网页代码/北京百度推广优化公司
  • 免费制作头像的网站/网域名解析ip查询
  • 怎样建网站 需要/各种手艺培训班