首页 > 其他分享 >南沙csp-j/s一对一家教陈老师解题:1318:【例5.3】自然数的拆分

南沙csp-j/s一对一家教陈老师解题:1318:【例5.3】自然数的拆分

时间:2024-09-14 09:04:16浏览次数:9  
标签:cnt 5.3 int sum 自然数 dfs 1318 拆分 csp

题目描述】

任何一个大于1的自然数n,总可以拆分成若干个小于n的自然数之和。

当n=7共14种拆分方法:

7=1+1+1+1+1+1+1
7=1+1+1+1+1+2
7=1+1+1+1+3
7=1+1+1+2+2
7=1+1+1+4
7=1+1+2+3
7=1+1+5
7=1+2+2+2
7=1+2+4
7=1+3+3
7=1+6
7=2+2+3
7=2+5
7=3+4
total=14

【输入】

输入n。

【输出】

按字典序输出具体的方案。

【输入样例】

7

【输出样例】

7=1+1+1+1+1+1+1
7=1+1+1+1+1+2
7=1+1+1+1+3
7=1+1+1+2+2
7=1+1+1+4
7=1+1+2+3
7=1+1+5
7=1+2+2+2
7=1+2+4
7=1+3+3
7=1+6
7=2+2+3
7=2+5
7=3+4

 

#include <iostream>
using namespace std;
int a[100],n;
void dfs(int sum,int cnt)
{
	if(sum>n)
		return;
	if(sum==n)
	{
		cout<<n<<"=";
		for(int i=1;i<cnt-1;i++)
				cout<<a[i]<<"+";
		cout<<a[cnt-1];
		cout<<endl;
		return;
	}
	for(int i=1;i<n;i++)
	{
		if(i>=a[cnt-1])  //不加此行,分成全排列 例如 此行要求后面的数一定要大于等于前面一个数 
		{
			a[cnt]=i;
			dfs(sum+i,cnt+1);
		}	
	}
}
int main()
{
	cin>>n;
	dfs(0,1);
	return 0;
}

 

标签:cnt,5.3,int,sum,自然数,dfs,1318,拆分,csp
From: https://www.cnblogs.com/nanshaquxinaosai/p/18413274

相关文章

  • CSP2024-19
    C题意:给定一棵树,定义简单路径\(x\toy\)是好的当且仅当\(x\)是路径中编号最小值,\(y\)是路径中编号最大值。\(n\le10^6\)。赛时双log做法:点分治,设路径端点\(x\)到分治之间的最小值为\(\min\),最大值为\(\max\)。如果\(x=\min\),A中加入二元组\((x,\max)\);\(x=......
  • 9.13 模拟赛(炼石计划 11 月 04日 CSP-S 十连测 #7)
    炼石计划11月04日CSP-S十连测#7【补题】-比赛-梦熊联盟(mna.wang)复盘基本上一眼秒了T1,先写这题。在8:30写完了对拍。用了将近一个小时。然后放到桌面2就没管,一直拍到了比赛结束。T2什么牛魔题面???出题人学过语文吗???T3把题读懂了,但是一直不能正确模拟出样例1,......
  • 南沙csp-j/s一对一家教陈老师解题:1334:【例2-3】围圈报数
    ​【题目描述】有n个人依次围成一圈,从第1个人开始报数,数到第m个人出列,然后从出列的下一个人开始报数,数到第m个人又出列,…,如此反复到所有的人全部出列为止。设n个人的编号分别为1,2,…,n,打印出列的顺序。【输入】nn和mm。【输出】出列的顺序。【输入样例】417【输出样例】......
  • CSP-J 算法基础 快速排序
    文章目录前言分治思想快速排序具体例子步骤1:选择基准值步骤2:分区步骤3:递归排序左边部分`[3,1,7,0,2]`步骤4:递归排序`[1,0,2]`步骤5:合并左边部分步骤6:合并整个数组快速排序的步骤总结:快速排序的第二个例子初始状态第一步:分区第二步:递归排序右边部分`[10,......
  • 南沙csp-j/s一对一家教陈老师解题:1317:【例5.2】组合的输出
    ​ 【题目描述】排列与组合是常用的数学方法,其中组合就是从n个元素中抽出r个元素(不分顺序且r≤n),我们可以简单地将n个元素理解为自然数1,2,…,n,从中任取r个数。现要求你用递归的方法输出所有组合。例如n=5,r=3,所有组合为:123 124 125 134 135 14......
  • 信息学奥赛初赛天天练-88-CSP-S2023阅读程序1-数据类型、unsigned 关键字、二进制、位
    信息学奥赛初赛天天练-88-CSP-S2023阅读程序1-数据类型、unsigned关键字、二进制、位运算、左移、右移、异或运算PDF文档公众号回复关键字:202409132023CSP-S阅读程序1判断题正确填√,错误填⨉;除特殊说明外,判断题1.5分,选择题3分,共计40分)01#include<iostream>......
  • 国家标准 | CSPM-3中级项目管理专业人员认证
    10月底全国CSPM-3考试现场1CSPM介绍项目管理专业人员能力评价(ChinaStandardsProjectManagement,CSPM)是指依据中国标准开展的项目管理专业人员能力评价。它是由中国标准化协会(全国项目管理标准化技术委员会秘书处)设立,运用已发布的项目管理国家标准(国际标准、团体标准),针对项目管理......
  • 为什么国家大力推行cspm证书
    PMP备考资料免费领国家重视CSPM证书(项目管理专业人员能力评价等级证书)的原因有几个方面:国家标准背书:CSPM证书是根据中国国家标准《项目管理专业人员能力评价要求》(GB/T41831-2022)制定的。这意味着CSPM证书代表了中国项目管理领域的最高标准与权威认可。符合国情:CSPM认证更加符合中......
  • 第33次CSP认证模拟的教训
    在写第三题化学方程式配平的时候,我用的是Python,决定写两个类来更好的实现逻辑。主要就是Array类,能像numpy那样对整个数组的元素进行操作。但是写完之后运行总报错有None参与运算或者Array不支持除法等(我寻思着有实现__div__啊)以下是我收获的教训:1.魔法方法的增量赋值运算符......
  • 2021 CSP-J 完善程序3
    2021CSP-J完善程序31完善程序(单选题,每小题3分,共30分)(矩形计数)平面上有n个关键点,求有多少个四条边都和x轴或者y轴平行的矩形,满足四个顶点都是关键点。给出的关键点可能有重复,但完全重合的矩形只计一次。试补全枚举算法#include<stdio.h>structpoint{ intx,y,id;}......