练习1

#include <cstdio>int shugen(int n) {int sum = 0;while(n != 0) {sum += n % 10;n /= 10;}if(sum / 10 != 0) shugen(sum); else return sum;
} int main(void) {int n;scanf("%d", &n);printf("%d", shugen(n));return 0;
}

练习2

#include <cstdio>int pell(int n) {if(n <= 2) return n;return pell(n - 2) + 2 * pell(n - 1);
}int main(void) {int n;scanf("%d", &n);int m, i;for(i = 0; i < n; i++) {scanf("%d", &m);printf("%d\n", pell(m) % 32767);}return 0;
}

练习3

#include <cstdio>
int ans;void upstair(int n) {if(n == 0) {ans++;return;} else if(n < 0) return;upstair(n - 1);upstair(n - 2);
}int main(void) {int n;while(scanf("%d", &n)) {ans = 0;upstair(n);printf("%d\n", ans);}return 0;
}

练习4

解法1

递归穷举。

#include <cstdio>
int ans;void place(int start, int n, int plate) {if(plate == 1) {ans++;return;}int i;for(i = start; i <= n / 2; i++) {place(i, n - i, plate - 1);}
}int main(void) {int m;scanf("%d", &m);int i, n, plate;for(i = 0; i < m; i++) {scanf("%d%d", &n, &plate);ans = 0;place(0, n, plate);printf("%d\n", ans);}return 0;
}

解法2


以n=7为例,有以上几种情况,事实上,我们只需要统计从0~n/2的所有可能情况即可。
思路如下:
(1)输入n和盘子数;
(2)第一个盘子放0~n/2个,放的个数为n1;
(3)第二个盘子放n1~n/2个,放的个数为n2;

(m-1)第m-1个盘子放n(m-2)个。
从流程1~m-1得到的所有可能解统计起来即可。

练习5

工事中

CCF基础P29练习题解相关推荐

  1. C++3.4数据结构之队列基础+blah数集题解

    C++3.4数据结构之队列基础+blah数集题解 队列(queue)是一种限定在一端进行插入,另一端删除的特殊线性表 . 就像排队买东西一样, 队列的出队就像排在前面的人买完东西后离开(删除). 队列 ...

  2. CCF认证历年试题解【网上跟帖,请不要使用称呼】

    程序改变现实,软件统治世界. 程序员需要有精益求精的工匠精神,追求逻辑的极简.时间的最少和存储的最省,并且懂得其中的平衡. 数据表示需要优先考虑,对于许多问题,找到表示该问题的数据结构,问题自然就解决 ...

  3. CCF CSP认证考试题解目录

    由于本人的书籍<算法详解(C++11 语言描述)>已经出版,为了降低题解的维护难度,有关CCF CSP考试的所有题解的更新将全部在书籍的配套仓库进行,CSDN博客中不再进行任何题解的更新. ...

  4. PTA 基础编程题 题解

    7-1 厘米换算英尺英寸 (15 point(s)) 查看题解   7-2 然后是几点 (15 point(s)) 查看题解   7-3 逆序的三位数 (10 point(s)) 查看题解   7-4 ...

  5. 牛客寒假算法基础集训营 题解

    A. 处女座与线性代数 题目描述 众所周知,处女座是数学大师.他定义了k维空间里的处女座点. 对于给出的k维度空间上N个点,处女座点满足: 对于这个点P和空间里任意其他两个点P1P1.P2P2,有do ...

  6. UOJ228:基础数据结构练习题——题解

    http://uoj.ac/problem/228 参考:https://www.cnblogs.com/ljh2000-jump/p/6357583.html 考虑当整个区间的最大值开方==最小值开 ...

  7. CCF 2015年题目题解 - Python

    2015年刷题目录 2015年12月 201512-1 数位之和 题目链接: 代码: 201512-2 消除类游戏 题目链接: 代码: 易错点需注意点:注意and前后都为真时结果返回第二个值. 201 ...

  8. CCF 2016年题目题解 - Python

    2016年刷题目录 2016年12月 201612-1 中间数 题目链接: 代码: 易错点需注意点: 201612-2 工资计算 题目链接: 代码: 易错点需注意点: 201612-3 题目链接: 代 ...

  9. CCF 2017年题目题解 - Python

    2017年刷题目录 2017年12月 201712-1 最小差值 题目链接: 代码: 易错点需注意点: 201712-2 游戏 题目链接: 代码: 易错点需注意点:直接模拟! 201712-3 题目链 ...

最新文章

  1. 神童、数学家、抑郁症患者,控制论之父诺伯特·维纳的一生
  2. JVM自动化的内存分配与内存回收
  3. Linux 终端訪问 FTP 及 上传下载 文件
  4. 1019 数字黑洞 (20 分)(c语言)
  5. python中sort命令介绍以及list结构中统计各元素出现的个数的方法
  6. C# Console.ReadLine()方法的使用 以及利用其返回值null终止输入
  7. mysql seconds_behind_master_MySQL中的seconds_behind_master的理解
  8. 10个css动画,10个精妙的CSS和Javascript动画Logo的示例(上)
  9. export ‘Switch‘ (imported as ‘Switch‘) was not found in ‘react-router-dom‘
  10. 【语言去噪】基于matlab GUI IIR+FIR滤波器语音去噪【含Matlab源码 1027期】
  11. 【机器学习系列】隐马尔科夫模型第三讲:EM算法求解HMM参数
  12. java+mysql企业进销存管理系统
  13. 中文句法分析_句法分析StanfordParser+依存句法分析pyhanlp
  14. 学会提问-批判性思维
  15. GO语言开源项目TOP 100
  16. Linux王冠-RHCE认证概况及费用一览
  17. Java并发机制的底层实现原理--volatile
  18. 综合案例—Spark实时交易数据统计
  19. Qt的对话框与窗口--标准的对话框
  20. LeetCode hot-100 简单and中等难度,21-30.

热门文章

  1. 计算 signed short 的取值范围
  2. Android接入支付宝授权_小白教程
  3. pmp中ram和raci的区别_【PMP考前冲刺】知识点大全(六)
  4. RankNet学习思路+损函感悟+\pi \xu 学xi+交叉熵损函详
  5. html如何调用短视频文件,短视频脚本怎么写?3种短视频脚本的创意写作方法干货分享!...
  6. 红黑树如何快速调整到平衡态_快速多态
  7. UPnP与Jini面对面
  8. Java题解:如何获取某一天的下一天的时间
  9. Nginx下同域部署多个Vue项目(history路由模式),报404、500错误
  10. 2019JDATA店铺购买预测大赛复盘(冠军方案)