作者 任唯

单位 河北农业大学

给定一个自然数n,由n 开始可以依次产生半数集set(n)中的数如下(注意半数集是多重集)。

  1. n∈set(n);
  2. 在n 的左边加上一个自然数,但该自然数不能超过最近添加的数的一半;
  3. 按此规则进行处理,直到不能再添加自然数为止。

例如,set(6)={6,16,26,126,36,136}。半数集set(6)中有6 个元素。

输入格式:

一个自然数n(0<n<1000)

输出格式:

半数集set(n)中的元素个数

输入样例:

6

输出样例:

6

个人思路:

对于一个自然数n,要在他的左边加入一个小于他一半,我们有1到n/2种加入方法,而这次加入的数左边继续加入小于他一半的数,根据这个特性我们可以用记忆化搜索,对于计算过的半数集直接拿来用就可以。

代码:

#include <bits/stdc++.h>
using namespace std;
const int N = 1010;
int f[N];
int ret(int n) {if (f[n] > 0) return f[n];  //大于零代表已经计算过int ans = 1;for (int i = n / 2; i >= 1; i--) { //没有计算过的我们通过递归计算ans += ret(i);}f[n] = ans;   //更新f[n]的值return ans;
}int main()
{int n;cin >> n;f[1] = 1;cout << ret(n);
}

7-2 半数集分数 25作者 任唯单位 河北农业大学相关推荐

  1. L2-007 家庭房产分数 25作者 陈越单位 浙江大学

    给定每个人的家庭成员和其自己名下的房产,请你统计出每个家庭的人口数.人均房产面积及房产套数. 输入格式: 输入第一行给出一个正整数N(≤1000),随后N行,每行按下列格式给出一个人的房产: 编号 父 ...

  2. R7-2 sdut-九九乘法表分数 30作者 周雪芹单位 山东理工大学九九乘法表是数学学习的基础,今天我们就来看看乘法表的相关问题。《九九乘法歌诀》,又常称为“小九九”,如下图所示。你的任务是

    R7-2 sdut-九九乘法表 分数 30 全屏浏览题目 切换布局 作者 周雪芹 单位 山东理工大学 九九乘法表是数学学习的基础,今天我们就来看看乘法表的相关问题.<九九乘法歌诀>,又常称 ...

  3. 7-3 找零钱***分数 20作者 李祥单位 湖北经济学院

    作者 李祥 单位 湖北经济学院 收银员现有 n 张面值分别为 v1​,v2​,...,vn​ 的纸币.若找零金额为 m,则一共有多少种找零方法? 注:0<n≤1000,0<v1​,v2​, ...

  4. 7-2 高精度求累加和 分数 25作者 胡伟平单位 广西科技大学

    使用求和公式求1到N的累加和大家都会,但是如果把N值变大呢,比如100位的整数,那该怎么求? 输入格式: 输入在一行中给出1个位数不超过100位的整数N. 输出格式: 对每一组输入,在一行中输出1+2 ...

  5. 11-散列1 电话聊天狂人分数 25作者 DS课程组单位 浙江大学

    给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人. 输入格式: 输入首先给出正整数N(≤105),为通话记录条数.随后N行,每行给出一条通话记录.简单起见,这里只列出拨出方和接收方的11位数字 ...

  6. 7-9 矩阵乘法分数 25作者 arbalest单位 河北大学

    给出一个大小为N1​×M1​ 的矩阵A和一个大小为N2​×M2​的矩阵B, 令矩阵C=A×B, 输出C. 矩阵乘法的公式为Ci,j​=k=1∑M1​​Ai,k​∗Bk,j​, 矩阵C的第i行第j列是C ...

  7. 7-101 个位数统计分数 15作者 陈越单位 浙江大学

    给定一个 k 位整数 N=dk−1​10k−1+⋯+d1​101+d0​ (0≤di​≤9, i=0,⋯,k−1, dk−1​>0),请编写程序统计每种不同的个位数字出现的次数.例如:给定 N= ...

  8. 7-73 一帮一分数 15作者 陈越单位 浙江大学

    "一帮一学习小组"是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组.本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当 ...

  9. 7-15 输出N以内的所有素数分数 15作者 李民单位 武汉理工大学

    编程找出N(2≤N≤500)以内(即小于等于N)的所有素数. 输入格式: 输入整数N(2≤N≤500). 输出格式: 每8个一行输出N以内的所有素数.注意每个数据均占5列,且采用右对齐. 输入样例1: ...

最新文章

  1. 一份忧伤的大厂生存百科
  2. 创新的缩略图展示javascript类库 - Kort.js
  3. python数据分析及展示(一)
  4. equals方法和==的区别--用实例简单说明
  5. matlab freqz函数使用
  6. 成功解决eric6 Create Dialog Code XXX.py exists but does not contain any classes
  7. java web 应用目录
  8. gen_circle_contour_xld创建圆或圆弧的XLD轮廓
  9. NeurIPS’20 | 长尾问题太严重?半监督和自监督就可以有效缓解!
  10. python查看运行内存占用_python中使用psutil查看内存占用的情况
  11. 六元均匀直线阵的各元间距为_梦得杯—镀覆技术论文大赛丨微机电系统器件电镀镍厚度均匀性的模拟与改进【刘瑞 许文杰 袁妍妍】...
  12. java a%2==0_Java 初始化a=2 打印a+++a++为5
  13. C语言数组名作为函数参数
  14. mysql group by 聚合_浅析MySQL使用 GROUP BY 分组聚合与细分聚合
  15. Java中 intValue,parseInt,Valueof 这三个关键字的区别
  16. 计算机教育部 学科分类,教育部学科分类及代码分类查询.pdf
  17. React脚手架的配置
  18. 论文阅读:You said that?
  19. 汇报工作的技巧和要求
  20. c语言编程运动会分数统计系统,东华大学数据结构设计C语言运动会分数统计系统...

热门文章

  1. ubuntu下载及安装搜狗拼音输入法
  2. 实战篇:SUSE 15 SP3 安装 Oracle 19C RAC 数据库
  3. 高德纳报告称:在2022年,每五个智能手机中就有四个具有人工智能
  4. python count函数代码_python count函数用法详解_后端开发
  5. 实时监控,智能预警,疾控中心的战疫“速度”
  6. 游戏效果解密----水果忍者刀划痕效果
  7. Typescript学习--Never
  8. 呼叫中心——方案选型
  9. MFC打印 打印预览
  10. 现在国内IT行业是不是程序员过多了?