D. 例题3.2.2 整数划分问题

题目描述

将正整数n表示成一系列正整数之和:n=n_1+n_2+...+n_kn=n1​+n2​+...+nk​,其中8\geq n_1\geq n_2\geq ...\geq n_k\geq 18≥n1​≥n2​≥...≥nk​≥1,k\geq1k≥1。正整数n的这种表示称为正整数n的划分。

例如正整数6有如下11种不同的划分:

6;5+1;4+2,  4+1+1;3+3,  3+2+1,  3+1+1+1;2+2+2,2+2+1+1,2+1+1+1+1;1+1+1+1+1+1。

Copy

输入格式

一个正整数 n

保证 n\leq 8n≤8

输出格式

一个正整数 m,表示n可以被分成m种

input


6

Copy

output


11

Copy

数据规模与约定

时间限制:1s

空间限制:256MB

这道题其实就是根据这个n然后把已知的所有条件都求出来就即可。

整数划分问题将正整数n表示成一系列正整数之和,n=n1+n2+……+nk n1>=n2>=………>=nk>=1;k>=1正整数n的划分数,记为p(n)。例如正整数6有如下11种不同的划分,所以p(6)=11在最大加数n1不大于m的划分个数记作q(n,m)。 q(n,m)=1, 当n=1,m=1;q(n,m)=q(n,n) 当n<m; q(n,m)=1+q(n,n-1) 当n==m;q(n,m)=q(n,m-1)+q(n-m,m) 当n>m


#include<bits/stdc++.h>
using namespace std;
int fun(int n, int m)
{
    if(n==1||m==1)return 1;
    else if(n<m)return fun(n,n);
    else if(n==m)return (1+fun(n,m-1));
    else return(fun(n,m-1)+fun(n-m,m));
}
int main()
{
//    freopen("decompose.in","r",stdin);
//    freopen("decompose.out","w",stdout);
    int n;
    cin>>n; 
    cout<<fun(n,n);
    return 0;
}
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/79518.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电脑RGB888P转换为JPEG方案 ,K230的RGB888P转换为JPEG方案

K230开发板本身具备将RGB888P转换为JPEG的能力&#xff0c;但需要正确调用硬件或软件接口。以下是具体分析及解决方案&#xff1a; 一、K230原生支持性分析 1. 硬件支持 K230的NPU&#xff08;神经网络处理器&#xff09;和图像处理单元&#xff08;ISP&#xff09;理论上支持…

图解 Git 工作流:理解 Rebase、Merge 与 Pull Request 的区别

图解 Git 工作流&#xff1a;理解 Rebase、Merge 与 Pull Request 的区别 在多人协作开发中&#xff0c;选择合适的 Git 分支管理策略至关重要。Merge、Rebase 和 Pull Request 是最常见的三种方式&#xff0c;它们本质不同&#xff0c;使用场景也不同。 本文将通过流程图&am…

Dart和Go语言特征对比

文章目录 Dart 和 Go 语法对照表字符串常用方法对照列表(数组/切片)常用方法对照Map (字典/哈希表) 使用对照IO 操作对照文件操作标准输入输出网络IO 主要差异说明 有同事说&#xff0c;我前端用Flutter&#xff0c;后端用Golang&#xff0c;都师出名门。但两个语言还是老打架&…

ActiveMQ 集群搭建与高可用方案设计(二)

五、高可用方案设计与优化 &#xff08;一&#xff09;Zookeeper 在 ActiveMQ 集群中的应用 作用&#xff1a;在 ActiveMQ 集群中&#xff0c;Zookeeper 扮演着至关重要的角色。它主要用于选举 Master 节点&#xff0c;通过其内部的选举机制&#xff0c;从众多的 ActiveMQ Br…

【项目归档】数据抓取+GenAI+数据分析

年后这两个月频繁组织架构变动&#xff0c;所以博客很久没更新。现在暂时算是尘埃落定&#xff0c;趁这段时间整理一下。 入职九个月&#xff0c;自己参与的项目有4个&#xff0c;负责前后端开发&#xff0c;测试&#xff0c;devops&#xff08;全栈/doge&#xff09;&#xff…

服务器热备份,服务器热备份的方法有哪些?

服务器热备份是保障业务连续性的重要技术手段&#xff0c;通过实时数据同步和快速故障切换&#xff0c;确保在主服务器故障时备份服务器能无缝接管。以下是常见的服务器热备份方法及其核心要点&#xff1a; 双机热备&#xff08;Active-Standby/Active-Active&#xff09; 主备…

【AI平台】n8n入门6:调用MCP服务(非社区节点)

前言 前边用n8n搭建一个MCP服务&#xff0c;现在&#xff0c;用n8n调用其他服务商提供的MCP服务。本文以高德地图服务为例&#xff0c;记录一下操作过程。 实现案例功能 MCP是啥 MCP&#xff08;Model Context Protocol&#xff0c;模型上下文协议&#xff09;是由Anthropi…

基于ArduinoIDE的任意型号单片机 + GPS北斗BDS卫星定位

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言1.1 器件选择1.2 接线方案 二、驱动实现2.1 核心代码解析&#xff08;arduino/ESP32-S3&#xff09; 三、坐标解析代码四、典型问题排查总结 前言 北斗卫星导航…

经典算法 最小生成树(prim算法)

最小生成树 题目描述 给定一个 n 个点 m 条边的无向图&#xff0c;图中可能存在重边和自环&#xff0c;边权可能为负数。 求最小生成树的树边权重之和。如果最小生成树不存在&#xff0c;则输出 impossible。 给定一张边带权的无向图 G (V, E)&#xff0c;其中&#xff1a…

LeetCode算法题 (设计链表)Day16!!!C/C++

https://leetcode.cn/problems/design-linked-list/description/ 一、题目分析 你可以选择使用单链表或者双链表&#xff0c;设计并实现自己的链表。 单链表中的节点应该具备两个属性&#xff1a;val 和 next 。val 是当前节点的值&#xff0c;next 是指向下一个节点的指针/引…

《解锁GCC版本升级:开启编程新世界大门》

《解锁GCC版本升级:开启编程新世界大门》 一、引言:GCC 版本升级的魔法钥匙 在编程的广阔天地里,GCC(GNU Compiler Collection)宛如一座灯塔,为无数开发者照亮前行的道路。它是一款开源且功能强大的编译器集合,支持 C、C++、Objective - C、Fortran、Ada 等多种编程语言…

toLua笔记

基本 LuaState luaStatenew LuaState(); luaState.Start(); luaState.DoString("xxx"); luaState.DoFile("yyy.lua"); luaState.Require("zzz");//不要加.lua后缀 luaState.CheckTop();//检查解析器栈顶为空 luaState.Dispose(); luaStatenull;…

go实现双向链表

需求 实现双向链表的节点生成、正反向遍历、指定删除。 实现 package mainimport ("fmt" )type zodiac_sign struct {number intdizhi stringanimal stringyear intprevious *zodiac_signnext *zodiac_sign }// 添加 // func add_node_by_order(pr…

AI实践指南:AGENT、RAG和MCP在Java中的简单实现

在当今AI快速发展的时代&#xff0c;有几个核心概念正在改变我们构建智能应用的方式。本文将用简单易懂的语言介绍三个重要概念&#xff1a;AGENT&#xff08;AI代理&#xff09;、RAG&#xff08;检索增强生成&#xff09;和MCP&#xff08;多通道感知&#xff09;&#xff0c…

解决VMware虚拟机能搜索到网页但打不开的问题

&#x1f334; 问题描述 很奇怪&#xff0c;不知道为什么&#xff0c;我安装的Windows 10虚拟机能在浏览器中搜索到网页&#xff0c;但点击具体的网页链接就是死活不能加载出来&#xff0c;如下图所示&#xff1a; 点击第一个链接&#xff0c;加载了四五分钟&#xff0c;结果就…

JVM性能调优的基础知识 | JVM内部优化与运行时优化

目录 JVM内部的优化逻辑 JVM的执行引擎 解释执行器 即时编译器 JVM采用哪种方式&#xff1f; 即时编译器类型 JVM的分层编译5大级别&#xff1a; 分层编译级别&#xff1a; 热点代码&#xff1a; 如何找到热点代码&#xff1f; java两大计数器&#xff1a; OSR 编译…

什么是多租户系统

随着云计算和 SaaS&#xff08;Software as a Service&#xff09;模式的普及&#xff0c;多租户架构&#xff08;Multi-Tenant Architecture&#xff09;成为 SaaS 产品设计中的核心模式之一。多租户架构允许多个用户&#xff08;租户&#xff09;共享同一套基础设施和应用&am…

多线程系列三:这就是线程的状态?

1.认识线程的状态 NEW&#xff1a;Thread对象已经创建好了&#xff0c;但还没有调用start方法在系统中创建线程 RUNNABLE&#xff1a;就绪状态&#xff0c;表示这个线程正在CPU上执行&#xff0c;或准备就绪&#xff0c;随时可以去CPU上执行 BLOCKED&#xff1a;表示由于锁竞争…

【C语言练习】019. 使用结构体数组存储复杂数据

019. 使用结构体数组存储复杂数据 019. 使用结构体数组存储复杂数据示例1&#xff1a;定义一个结构体并创建结构体数组定义结构体创建并初始化结构体数组输出结果 示例2&#xff1a;动态输入数据到结构体数组定义结构体动态输入数据示例输入和输出 示例3&#xff1a;使用结构体…

**Java面试大冒险:谢飞机的幽默与技术碰撞记**

互联网大厂Java求职者面试&#xff1a;一场严肃与搞笑交织的技术盛宴 场景&#xff1a; 互联网大厂面试间 人物&#xff1a; 面试官&#xff1a; 一位严肃的资深架构师&#xff0c;对技术要求严格。谢飞机&#xff1a; 一位搞笑的程序员&#xff0c;技术实力参差不齐。 第一…