P1025 [NOIP2001 提高组] 数的划分

暴搜 剪枝

枚举固定的位置

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 1e3+10;
int n,k;
int res;
void dfs(int last,int sum,int cur){
	
	if(cur==k){
		if(sum==n)res++;
		return;
	}
	
	for(int i=last;i+sum<=n;i++)
	 dfs(i,sum+i,cur+1);
}
int main()
{
	cin>>n>>k;
	dfs(1,0,0);
	cout<<res;
}
相关推荐
pilgrim5314 分钟前
结合 Leetcode 题探究KMP算法
算法·leetcode
罗义凯34 分钟前
其中包含了三种排序算法的注释版本(冒泡排序、选择排序、插入排序),但当前只实现了数组的输入和输出功能。
数据结构·c++·算法
kevien_G11 小时前
JAVA之二叉树
数据结构·算法
syt_biancheng2 小时前
Day3算法训练(简写单词,dd爱框框,3-除2!)
开发语言·c++·算法·贪心算法
二进制的Liao2 小时前
【编程】脚本编写入门:从零到一的自动化之旅
数据库·python·算法·自动化·bash
自然数e2 小时前
C++多线程【线程管控】之线程转移以及线程数量和ID
开发语言·c++·算法·多线程
云在Steven3 小时前
在线确定性算法与自适应启发式在虚拟机动态整合中的竞争分析与性能优化
人工智能·算法·性能优化
前进的李工3 小时前
LeetCode hot100:234 回文链表:快慢指针巧判回文链表
python·算法·leetcode·链表·快慢指针·回文链表
sin_hielo3 小时前
leetcode 3228
算法·leetcode
xier_ran4 小时前
力扣(LeetCode)100题:41.缺失的第一个正数
数据结构·算法·leetcode