原题地址:点击打开链接

仔细观察可发现,关于中心点对称的两个数之和为n*n+1,所以只需要找出一半,则另一半也就出来了,那么如何找出这一半?

看个图就明白了

//HDU 1998
#include<stdio.h>
int map[20][20];
int main()
{int n,t,m,p,u,v,i,j;scanf("%d",&t);while(t--){scanf("%d",&n);map[1][n]=(n+1)/2*n;for(i=n-1;i>=(n+1)/2;i--)map[1][i]=map[1][i+1]-n-2;map[1][(n+1)/2-1]=n*n-1;for(i=(n+1)/2-2;i>=1;i--)map[1][i]=map[1][i+1]-n-2;m=n;p=1;for(i=n;i>(n+1)/2;i--){for(j=1;j<=m-1;j++){u=1+j;v=i-j;map[u][v]=map[u-1][v+1]-1;}if(j)u=u-1;map[u][v]=map[u+1][v]-1;for(j=1;j<p;j++){map[u+j][v-j]=map[u][v]-j;}m-=2;p++;}m=n/2;for(i=n/2;i>=1;i--){for(j=1;j<=m-1;j++){u=1+j;v=i-j;map[u][v]=map[u-1][v+1]-1;}m-=1;}for(i=1;i<=n;i++)for(j=1;j<=n-i;j++){u=(n+1)-i;v=(n+1)-j;map[u][v]=(n*n+1)-map[i][j];}for(i=1;i<=n;i++){for(j=1;j<=n;j++)printf("%4d",map[i][j]);printf("\n");}}return 0;
}

HDU 1998奇数阶魔方相关推荐

  1. hdu 1998 奇数阶魔方 规律

    题目链接 奇数阶魔方 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total ...

  2. HDU - 1998 奇数阶魔方

    传送门 文章目录 题意: 思路: 题意: 给你一个奇数nnn,构造一个nnn阶幻方. 3≤n≤193\le n\le 193≤n≤19 思路: 模板题了,直接构造一个幻方即可. 首先在第一行中间放一个 ...

  3. HDU:1998 奇数阶魔方(规律填数)

    奇数阶魔方 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  4. 杭电1998 奇数阶魔方

    奇数阶魔方 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  5. 奇数阶魔方(1998)

    奇数阶魔方 原题链接: http://acm.hdu.edu.cn/showproblem.php?pid=1998 Problem Description 一个 n 阶方阵的元素是1,2,-,n^2 ...

  6. HDU OJ 1998. 奇数阶幻方

    文章目录 1. 题目描述 2. 解题思路 3. 代码实现 1. 题目描述 题目链接:1998. 奇数阶幻方 2. 解题思路 奇数阶幻方的填法确实很多,但最简便且操作性强的就是 "罗伯法&qu ...

  7. Matlab编程与数据类型 -- 奇数阶魔方矩阵的编程

    本微信图文详细介绍了利用Matlab实现奇数阶魔方矩阵的编程.

  8. NYOJ 734 奇数阶魔方

    奇数阶魔方 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 一个 n 阶方阵的元素是1,2,...,n^2,它的每行,每列和2条对角线上元素的和相等,这样的方阵叫魔方.n ...

  9. 奇数阶魔方阵算法分析

    奇数阶魔方阵就是指行列数都是吧n(n>=3 且 n%2 == 1)的魔方阵 奇数阶魔方阵的数字规律 通过对奇数阶魔方阵的分析,其中的数字排列有如下的规律: (1)自然数1出现在第一行的正中间: ...

最新文章

  1. 巧用CSS的 Mask 滤镜
  2. 为什么说「中台」程序员未来会最值钱?
  3. 租约-分布式缓存一致性的高效容错机制
  4. 2017-2018-1 20155222 《信息安全系统设计基础》第8周学习总结
  5. 我的第一个React Native App
  6. netty系列之:在netty中使用protobuf协议
  7. CV中的经典网络模型
  8. lvs工作在第几层_LVS 原理(调度算法、四种模式、四层负载均衡和七层 的区别)...
  9. android连接此设备时打开,QtScrcpy: Android实时投屏软件,此应用程序提供USB(或通过TCP/IP)连接的Android设备的显示和控制。它不需要任何root访问权限...
  10. oracle 00283,数据库出现ORA-00283/ORA-01610的问题
  11. HTML固定的底栏(flex布局)
  12. XP系统出现qq安装包可能被非法改动导致安装失败
  13. c php乱码,Cknife的PHP功能部分修正,解决SHELL无法回显以及中文乱码
  14. Python Intro - xrange obsoleted by Python3
  15. 文章-编程需要知道多少数学知识?
  16. java 日期 yyyy_Java时间格式化时YYYY(大写)和yyyy(小写)的区别
  17. 逐点插入法-delaunay三角剖分
  18. html5微课程制作,翟猛老师《微课开发及制作-基于H5课件制作模式》
  19. Warshall算法JAVA实现
  20. windows7微软官方_Microsoft Windows 7 | 第1部分

热门文章

  1. 【BZOJ3837】[Pa2013]Filary 随机化神题
  2. 哪些著名软件是用C、C++编写的?
  3. 十五个闭目养神、调养身心的方法
  4. 靶机渗透(一)——bulldog2
  5. UVALive - 5713 Qin Shi Huang's National Road System
  6. actuator--基础--6.1--端点解析--health端点
  7. 小米盒子 android tv,小米盒子3 MDZ-16-AA 降级及刷入Android TV系统
  8. 【34期】谈谈为什么要拆分数据库?有哪些方法?
  9. kali在高清屏幕下如何放大字体与图标
  10. 苹果开发者账号可以创建多少测试证书_苹果开发者账号对应生成的证书都有哪些...