递推之折叠方阵问题

这篇博客介绍了如何递推构造n阶的间断折叠方阵和回转折叠方阵。起始数1置于方阵左上角,间断折叠方阵按特定规则层层折叠,而回转折叠方阵则根据奇偶层不同方向进行折叠。文章通过算法分析和程序代码展示详细步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 问题描述
    定义n阶间断折叠方阵是把从起始数1开始的n2个整数折叠为n行n列的n阶方阵:起始数1置于方阵的左上角,然后从起始数开始递增,每一层从第1行开始,先竖向下再折转向右,层层折叠地排列为间断折叠方阵。
    n阶回转折叠方阵是把起始数1置于方阵的左上角,然后从起始数开始递增,偶数层从第1行开始,先竖向下再折转向右;奇数层从第1列开始,先横向右再竖向上,呈首尾连接,层层折叠地排列为回转折叠方阵。
    下图所示为5阶间断折叠方阵与5阶回转折叠方阵。
    试递推构造并输出指定n阶间断折叠方阵与回转折叠方阵。
    这里写图片描述
  2. 算法分析
    设置二维数组z,从给定的起始数1开始,按递增1取值,据间断折叠方阵的构造特点给二维数组z(n,n)赋值。
    显然起始数1赋值给z(1,1)。
  3. 程序代码
#include <iostream>

#define N 50

using namespace std;

//间接折叠方阵 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值