看完最强大脑,有一期是说N阶幻立方的,作为一个程序员,我的第一反应时我可以用程序实现,在此公布N(奇数)阶幻方的java实现代码:

package com.lzugis.test;

public class Practice {

public static int[][] magicOdd(int n) {

int[][] square = new int[n + 1][n + 1];

int i = 0;

int j = (n + 1) / 2;

for (int key = 1; key <= n * n; key++) {

if ((key % n) == 1)

i++;

else {

i--;

j++;

}

if (i == 0)

i = n;

if (j > n)

j = 1;

square[i][j] = key;

}

int[][] matrix = new int[n][n];

for (int k = 0; k < matrix.length; k++) {

for (int l = 0; l < matrix[0].length; l++) {

matrix[k][l] = square[k + 1][l + 1];

}

}

return matrix;

}

public static void main(String[] args) {

int[][] magic = Practice.magicOdd(3);

for (int k = 0; k < magic.length; k++) {

for (int l = 0; l < magic[0].length; l++) {

System.out.print(magic[k][l] + " ");

}

System.out.println();

}

}

}效果如下:

3阶幻方

5阶幻方

备注:

幻方(Magic Square)是一种将数字安排在正方形格子中,使每行、列和对角线上的数字和都相等的方法。幻方中间格的值为(N*N+1)/2,即3阶幻方中间为(3*3+1)/2=5,3阶幻方中间为(5*5+1)/2=13,……

如有疑问请联系:

QQ:1004740957

Email:niujp08@qq.com

奇数阶幻方 java_N(奇数)阶幻方-java实现代码相关推荐

  1. 双偶幻方的c语言算法,单偶阶、双偶阶幻方的巧妙填法

    单偶阶.双偶阶幻方的巧妙填法 单偶阶.双偶阶幻方的巧妙填法 人气:150 ℃时间:2019-12-07 19:18:09 优质解答 一.双偶幻方的解法 能被4整除的n阶幻方叫双偶幻方,如8阶.12阶. ...

  2. 任意阶幻方的c++实现----奇阶幻方、双偶幻方、单偶幻方。

    幻方分为3类.奇阶幻方(奇数).双偶幻方(能够被4整除,如8,12,16--).单偶幻方(4m+2形式,如6,10--),构造算法各不相同. 下面的程序中,奇阶幻方的构造算法为Merzirac法.双偶 ...

  3. 范宝兴:幻方与类自然数幻方(上)「片桐善直8阶间隔幻方」「同心6阶/8阶/10阶」...

    范宝兴:幻方与类自然数幻方(上)「片桐善直8阶间隔幻方」「 同心6阶/8阶/10阶」 ※※※※※※ 來稿時間:2016年11月11日下午2:49分. 貼博時間:2016年11月18日. ※※※※※※ ...

  4. 奇数下标都是奇数或者偶数下标都是偶数(Java)

    分享一个大牛的人工智能教程.零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请轻击http://www.captainbed.net package live.every.day.Pro ...

  5. 数组和矩阵问题:奇数下标都是奇数或者偶数下标都是偶数

    [题目] 给定一个长度不小于2的数组 arr, 实现一个函数调整 arr, 要么让所有的偶数下标都是偶数,要么让所有的奇数下标都是奇数. [题目] 如果 arr 的长度为 N,函数要求时间复杂度为 O ...

  6. 【算法基础】奇数下标都是奇数,偶数下标都是偶数

    给定长度不小于2的数组,输出调整后的数组,额外空间复杂度O(1) 思路: even : arr最左边的偶数下标 old : arr最左边的奇数下标 不断检查arr的最后一个数,如果是偶数则和even交 ...

  7. canvas贝塞尔曲线爱心_canvas实现高阶贝塞尔曲线(N阶贝塞尔曲线生成器)

    写在最前 由于原生的Canvas最高只支持到三阶贝塞尔曲线,那么我想添加多个控制点怎么办呢?(即便大部分复杂曲线都可以用3阶贝塞尔来模拟)与此同时,关于贝塞尔控制点的位置我们很难非常直观的清楚到底将控 ...

  8. 分数阶simulink工具箱_CCDC 2021特别专题:分数阶微积分与分数阶系统

    点击蓝字,关注我们 征文通知 第33届中国控制与决策会议(CCDC 2021)将于2021年5月22日~24日在中国昆明举行.会议特别专题分数阶微积分与分数阶系统现向从事相关研究的广大专家.学者征稿. ...

  9. 深度学习(17)TensorFlow高阶操作六: 高阶OP

    深度学习(17)TensorFlow高阶操作六: 高阶OP 1. Where(tensor) 2. where(cond, A, B) 3. 1-D scatter_nd 4. 2-D scatter ...

最新文章

  1. Centos6 破解系统密码
  2. Java黑皮书课后题第2章:*2.23(驾驶费用)编写一个程序,提示用户输入驾驶的距离、每加仑多少英里的汽车燃油性能值,以及每加仑的价格,然后显示旅程的费用
  3. Backtrack5中文汉化[转]
  4. php四种基础算法:冒泡,选择,插入和快速排序法
  5. 记录uni-app弹框事件无生命周期问题;uni-popup-dialog打开触发事件;uni-popup-dialog调用接口时机
  6. 定时器驱动数码管c语言程序,74hc595驱动数码管时间程序
  7. 事业单位入编和没入编的区别是什么?
  8. PHP Curl 多线程实现
  9. c语言 学习手册,c语言学习手册
  10. flutter视频播放videoplayer与chewie
  11. 新商用密码产品认证梳理——检测和认证机构篇
  12. 身份证城市代号python_身份证号码的地区代码分别是什么?
  13. java基于微信小程序的在线学习考试测试系统小程序 uniapp
  14. 惠普HP Laser MFP 137fnw 一体机驱动
  15. 114DNS Public DNS+ 阿里DNS 百度DNS 360 DNS派 Google DNS公共DNS评测体验报告
  16. 37个项目!2020年5G+智慧灯杆项目落地情况大汇总
  17. 入门级,Hadoop详情教程(一)
  18. iOS开发——keychain的使用
  19. CRM系统中的线索、客户、联系人、商机
  20. 计算机管理恢复分区,Win10硬盘新增的恢复分区是什么?

热门文章

  1. 受保护的属性无法直接读取
  2. RNA-Seq分析软件HTSeq的安装
  3. 使用二分查找向一个有序数组中插入一个数据
  4. 详解AST抽象语法树
  5. Parquet格式描述
  6. Android 如何退出整个应用程序?
  7. 简单工厂模式+工厂方法模式
  8. 排序算法时间复杂度、空间复杂度、稳定性比较
  9. 三星的S3C2440A 存储器控制器
  10. 机器学习——超参数调优