/*
魔方阵,古代又称“纵横图”,是指组成元素为自然数1、2…n的平方的n×n的方阵,
其中每个元素值都不相等,且每行、每列以及主、副对角线上各n个元素之和都相等。
输入一个奇数,实现奇数魔方阵。 附:奇数魔方阵的实现方法
(1) 将1填入第一行中间;
  (2) 将每个数填在前一个数的右上方。
  (3) 若该位置超出最上行,则改填在最下行的对应位置;
  (4) 若该位置超出最右列,则该填在最左列的对应行位置;
  (5) 若某元素填在第一行最右列,下一个数填在该数同列的下一行;
   (6) 若某数已填好,但其右上角已填了其他数据,则下一个数填在该数同列的下一行位置。
*/ #include <stdio.h>
#include <math.h> int main(void)
{
int a[][],i,j,n,k,count; scanf("%d",&count);
while(count--)
{
scanf("%d",&n);
for(i=;i<=n;i++)
for(j=;j<=n;j++)
a[i][j]=;
j=n/+;
a[][j]=;
i=; for(k=;k<=n*n;k++)
{
i=i-;
j=j+; if( i== && j==n+ )
{
i=i+;
j=j-;
}
else
{
if(i==)
{
i=n;
}
if(j==n+)
{
j=;
}
} if(a[i][j]==)
{
a[i][j]=k;
}
else
{
i=i+;
j=j-;
a[i][j]=k;
}
} for(i=;i<=n;i++)
{
for(j=;j<=n;j++)
printf("%4d",a[i][j]);
printf("\n");
}
}
return ;
}

ACM1998的更多相关文章

随机推荐

  1. [图解教程]Eclipse不可不知的用法之一:自动生成Getter、Setter和构造方法

    [图解教程]Eclipse不可不知的用法之一:自动生成Getter.Setter和构造方法 关键词:Getters and Setters.getter和setter方法.Constructor us ...

  2. 使用List,Dictionary加载数据库中的数据

    情景描述:数据库中有一张设备表,字段DWDM存放的是各个厂编号,字段ZNBH存放的是设备编号.其中DWDM跟ZNBH是一对多的关系.需要将数据库中的值加载到List<Dictionary< ...

  3. POJ2891——Strange Way to Express Integers(模线性方程组)

    Strange Way to Express Integers DescriptionElina is reading a book written by Rujia Liu, which intro ...

  4. Redhat 使用中文安装后更换为英文的设定

    vi /etc/sysconfig/i18n将LANG改为LANG=en_US.UTF-8保存退出,重新reboot

  5. SqlServer几个注意点

    1.修改系统参数时,必须是单用户情况下才能更改成功!在Properties->Options中修改. 2.数据库字段值默认是不区分大小写的,修改方法如下: 2.1.右键数据库,选择Propert ...

  6. tcpdump抓SQL

    前言:假设如果有个服务器几十个链接突然达到上千个链接,show processlist,general_log,还有慢查询日志这些都不能用,你怎么把这些链接过来的SQL情况了解清楚,如果你觉得那些好用 ...

  7. java中的clone

    .clone 要实现cloneable接口: .深度clone和浅度clone .对象.clone() 1. Clone&Copy      假设现在有一个Employee对象,Employe ...

  8. RecyclerView 结合 CardView 使用(二)

    上一篇的基础上,修改了,CardView的布局和点击效果 总结: CardView的奇葩属性 :app:cardPreventCornerOverlap="false" 和园角边框 ...

  9. AngularJS promise()

    实例说明一 <!DOCTYPE html> <html ng-app="my-app"> <head> <meta charset=&qu ...

  10. tomcat调优的几个方面

    转载自:http://my.oschina.net/u/593721/blog/146710 作者:小报童 和早期版本相比最新的Tomcat提供更好的性能和稳定性.所以一直使用最新的Tomcat版本. ...