一堆IKUN知识点

本文通过四个实例——输出Catalan数、集合拆分、正整数拆分和8数码难题,深入探讨了递归和回溯算法的应用。程序涵盖了从简单的数学计算到解决复杂问题的策略,如8数码难题的最小步数解决方案。此外,还介绍了两种不同的n皇后问题递归算法实现。
摘要由CSDN通过智能技术生成

(1)输出前n个catalan数:
program jk;
const maxn=1000;
type arraytype=array[0..maxn] of longint;
var i,j,n:longint;

procedure mul(var h:arraytype;k:longint);
var i:longint;
  begin
    for i:=0 to maxn do h[i]:=h[i]*k;
    for i:=0 to maxn-1 do
    begin
      h[i+1]:=h[i+1]+h[i] div 10;
      h[i]:=h[i] mod 10
    end
  end;

procedure devide(var h:arraytype;k:longint);
var d,i,r:longint;
  begin
  r:=0;
  for i:=maxn downto 0 do
    begin
      d:=10*r+h[i];
      h[i]:=d div k;
      r:=d mod k
    end
  end;
procedure cat(n:integer);
var i,j:integer;
    h:arraytype;
begin
for i:=1 to maxn do h[i]:=0;
  h[0]:=1;
  for i:=3 to n-1 do
    begin
      mul(h,4*i-6);
      devide(h,i

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值