百练+递归模拟题+二进制思想 理解好递归每一层做什么
2017-09-14 19:46
274 查看
点击打开链接
#include<stdio.h> #include<stdlib.h> #include<iostream> #include<string.h> #include<cstring> #include<string> #include<algorithm> #include<math.h> #include<queue> #include<set> #include<stack> #include<map> #define LL long long #define inf 0x3f3f3f3f using namespace std; void solv(int num, int n)///n为几次方 { if(num==0) return; int r=num%2; num=num/2; solv(num, n+1); if(num&&r) printf("+");///只有两个数都是非0时候才会 + if(r){///当前最后一位 if(n==1) printf("2"); else{///次方有可能是0或者还未分解完 printf("2("); if(n==0) printf("0"); else solv(n,0); printf(")"); } } } int main(){ int num; scanf("%d",&num); solv(num,0); return 0; }
相关文章推荐
- 什么是数组:从二进制到多重链表深入理解数据组合的内部机制
- 通过河内之塔问题深入理解递归思想
- 编程之递归思想理解记录
- C++程序设计实验报告(二十七)---第二周任务一(自定义函数用递归思想,即不断调用,反向输出二进制)
- Sping理解以及IoC/DI入门,是什么、能干什么,分析IoC/DI的思想演变进程
- 漫谈递归:递归的思想 用归纳法来理解递归
- 利用递归的方法求二进制(刚开始有点不理解,现在终于理解了)
- 从递归求和的三种方式理解递归思想
- 递归和迭代----深入理解递归的使用
- 递归思想斐波那契数列变形
- 编程思想之迭代器什么是迭代器?
- 什么是抽象类?什么是接口?接口和抽象类的区别在哪里?怎样去理解它们呢?
- 【HDU5587 BestCoder Round 64 (div1)B】【迭代 前缀和思想】Array 前m个数的二进制中共有多少个1
- 什么是Avalon的“思想”?
- JFinal源码解析与思想理解
- 一篇文章带你深入理解什么是负载测试
- 程序算法艺术与实践:递归策略基本的思想
- 深入理解流,什么是流?
- [置顶] 如何理解Linus Torvalds的“什么才是优秀程序员”的话
- 深入理解Spring MVC 思想