递归代码
  • 板块学术版
  • 楼主nsu22016021534
  • 当前回复5
  • 已保存回复5
  • 发布时间2023/11/15 18:43
  • 上次更新2023/11/15 19:35:32
查看原帖
递归代码
814005
nsu22016021534楼主2023/11/15 18:43

汉诺塔问题

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>

void move(int x, int y)
{
	printf("%c->%c\n", x, y);
}
void hanoi(int n, char a, char b, char c)
{
	if (n == 1)
	{
		move(a, c);
	}
	else
	{
		hanoi(n - 1, a, c, b);//将A座上的n-1个盘子借助C座移向B座
		move(a, c);//将A座上最后一个盘子移向C座
		hanoi(n - 1, b, a, c);//将B座上的n-1个盘子借助A座移向C座
	} 
}
//move中的实参与hanoi函数中的形参相对应,而hanoi函数中形参a,b,c所对应的值也是在有规律的变化
int main()
{
	int n = 0;
	scanf("%d", &n);
	hanoi(n, 'A', 'B', 'C');
	return 0;
}

兔子繁衍代码

#include<stdio.h>

long long n,t;//n为月份,t为最后兔子总数 

long long f(long long n){
	if(n<2) return 1;
	return f(n-1)+f(n-2);
}

int main()
{
	scanf("%lld",&n);
	t=f(n);
	
	printf("%lld\n",t);
	
	return 0;
}
2023/11/15 18:43
加载中...