![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
递推与递归
ypeijasd
山西大学附属中学信息学竞赛教练,爱编程、爱算法、爱生活、爱运动
展开
-
汉诺塔递归
#include <stdio.h> int n, cnt; //hannuota(n, A, B, C) //A->C , B辅助 void hannuota(int n, char A, char B, char C) { if(n==1){ //当 n 等于1 printf("%c->%c\n", A, C);//输出 A->C cnt++; } else{ //否则 hannuota(n-1, A, C, B); printf("%c-&g.原创 2021-06-03 10:17:46 · 98 阅读 · 0 评论 -
P1028 数的计算-递推、递归
P1028 数的计算-递推、递归 题目传送门 本题看似传统的递归,由于数据可以到1000,所以传统递归会超时,实际上是一道递推题。本题解总共写了四个版本代码,分别是题意转换递归、升级版递归、打表代码、进阶版,打表和进阶版可以AC。 一、题意转换递归 根据题意简单转换了一个递归,遍历[1,n/2],每个数字调用递归函数cal计算,提交超时。 #include <iostream> using namespace std; int n, result; void cal(int a) { re原创 2020-07-24 08:52:08 · 449 阅读 · 0 评论