洛谷P1010递归法题解
261 字
1 分钟
洛谷P1010递归法题解
————————————本文旨在讨论计算机知识,欢迎指正——————————————

输入输出样例
** 输入 ** 1315 输出
2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)
说明/提示
** 【数据范围】
对于 100% 的数据,1≤n≤2×104。
1≤n≤2×104
首先,我们观察这道题,笔者看到这道题一开始也是很懵,关于如何输出这种长长的一行,但是,我们经过拆解可以发现: 2的十次方,括号内是2加2的3次方,也就是8,根据括号中叠括号的方式,我们可以尝试用递归的方式来做题: 注意:2的0次方和2的一次方是特殊的,分别是最基础的奇数和偶数,其它数字都是这样合成的: 于是我们得把0和1次方作为终点; 那么,我们可以写出这样的函数:
void solve(int n){for (int i = 14; i >= 0; i--){if (pow(2, i)#includeusing namespace std;int n;void solve(int n){for (int i = 14; i >= 0; i--){if (pow(2, i) > n;solve(n);return 0;}希望能对你有所帮助!
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!
相关文章 智能推荐
1
洛谷P1115最大字段和的前缀和做法
算法题解 ———————————本文旨在学习交流计算机知识,欢迎指正!————————————
看到标题,我们可以发现,这也是一个继承性累加问题,很显然的想到滑动窗口和前缀和两个方法: 首先看滑动窗口,那我们的思路就是左边是left,右边是right,而每次向右判断最大的数更新值但记录最大值,可是,如果这样...
2
洛谷P1996约瑟夫问题数据结构链表模拟法
算法题解 ———————————本文旨在讨论和交流计算机知识,欢迎指正!!!————————— 题目描述 n 个人围成一圈,从第一个人开始报数,数到 m 的人出列,再由下一个人重新从 1 开始报数,数到 m 的人再出圈,依次类推,直到所有的人都出圈,请输出依次出圈人的编号。 输入格式 输入两个整数 n,m...
3
ResNet学习心得
深度学习 在上一章节,我们着重介绍了有关卷积神经网络的计算原理与优化方法,这一章,我们将介绍ResNet这一个里程碑式的神经网络,它解决了朴实神经网络在训练中的层数增加导致的深度神经网络训练中的梯度消失/爆炸问题和网络深度增加时准确度饱和甚至下降的现象(退化问题)
ResNet被发明于2015年,它的优化方...
4
多进程编程总结
Linux编程 本章记录笔者在多进程编程中的实验心得与感受。
1、多进程的相关概念:
1进程是程序一次执行的过程,有一定的生命周期,分为:创建态,就绪态,执行态,挂起态和死亡态。
2进程是计算机资源分配的基本单位,系统会给每个进程分配04G的虚拟内存,其中03G是用户空 间,34G是内核空间
3其中多个进程...
5
拓展单向循环链表
数据结构 —————————————本文旨在讨论计算机知识欢迎指正——————————————— 书接上回:我们已经了解了链表如何编写与前置节点和头指针两种表示方式,下面,我们来了解进阶写法———如何实现单向循环链表。 下面,我们来梳理一下循环链表的实现方式: 这是朴素的链表实现形式:
这是我们理想中的循环...
随机文章 随机推荐