总时间限制: 
10000ms

单个测试点时间限制: 
1000ms

内存限制: 
128000kB
描述

幻方是一种很神奇的N*N 矩阵:它由数字 1,2,3, … …,N*N 构成,且每行、每列及两条对角线上的数字之和都相同。

当N为奇数时,我们可以通过以下方法构建一个幻方:

首先将 1 写在第一行的中间。

之后,按如下方式从小到大依次填写每个数K(K= 2,3, …,N*N ):

  1. 若 (K−1) 在第一行但不在最后一列,则将K填在最后一行,(K−1) 所在列的右一列;

  2. 若 (K−1) 在最后一列但不在第一行,则将K填在第一列,(K−1) 所在行的上一行;

  3. 若 (K−1) 在第一行最后一列,则将K填在 (K−1) 的正下方;

  4. 若 (K−1) 既不在第一行,也不在最后一列,如果 (K−1) 的右上方还未填数,则将K填在(K−1)的右上方,否则将K填在 (K−1) 的正下方

现给定N,请按上述方法构造N*N 的幻方。

输入
输入文件只有一行,包含一个整数N,即幻方的大小。
输出
输出文件包含N行,每行N个整数,即按上述方法构造出的N*N的幻方。相邻 两个整数之间用单个空格隔开。
样例输入
3
样例输出
8 1 6
3 5 7
4 9 2
提示
对于 100% 的数据,1 ≤N≤39 且N为奇数。
来源
noip2015day1第一题
模拟
#include<bits/stdc++.h>
using namespace std;
int hf[][]= {};
int k,i,j,n,dx,dy;
int main() {
cin>>n;
k=;
dx=;
dy=n/+;
hf[dx][dy]=k;
for(k=; k<=n*n; k++) {
if(dx==&dy!=n) {
dx=n;
dy++;
} else if(dx!=&&dy==n) {
dy=;
dx--;
} else if(dx==&&dy==n) dx++;
else if(dx!=&&dy!=n) {
if (hf[dx-][dy+]==&&(dx->&&dy+<=n)) {
dx--;
dy++;
} else dx++;
}
hf[dx][dy]=k;
}
for(i=; i<=n; i++) {
for(j=; j<=n; j++)cout<<hf[i][j]<<' ';
cout<<endl;
}
return ;
}

东方14模拟赛之noip2015/day1/3/神奇的幻方的更多相关文章

  1. 2015 NOIP day1 t1 神奇的幻方 模拟

    神奇的幻方 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://www.luogu.org/problem/show?pid=2615 Descri ...

  2. 2014.6.14模拟赛【bzoj1592】[Usaco2008 Feb]Making the Grade 路面修整

    Description FJ打算好好修一下农场中某条凹凸不平的土路.按奶牛们的要求,修好后的路面高度应当单调上升或单调下降,也就是说,高度上升与高度下降的路段不能同时出现在修好的路中. 整条路被分成了 ...

  3. 2014.6.14模拟赛【bzoj1646】[Usaco2007 Open]Catch That Cow 抓住那只牛

    Description Farmer John has been informed of the location of a fugitive cow and wants to catch her i ...

  4. noip 2018.10.14 模拟赛 砍树

    数学问题... 根据题意,有: 移项,整理,得: 记 于是 那么 可以看到,最多只会有2*个取值(显而易见) 于是对应的,可能产生效果的d也只会有个,于是我们把他们找出来,扔进一个数组里然后排序,去重 ...

  5. 【NOIP2015提高组】Day1 t1神奇的幻方

    一大淼题,直接瞎搞即可,不过一定要仔细看题目给定的条件. #include<iostream> #include<cstdio> #include<cstring> ...

  6. PKUSC 模拟赛 day1 下午总结

    下午到了机房之后又困又饿,还要被强行摁着看英文题,简直差评 第一题是NOIP模拟赛的原题,随便模拟就好啦 本人模拟功力太渣不小心打错了个变量,居然调了40多分钟QAQ #include<cstd ...

  7. 队爷的讲学计划 CH Round #59 - OrzCC杯NOIP模拟赛day1

    题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的讲学计划 题解:刚开始理解题意理解了好半天,然后发 ...

  8. 队爷的Au Plan CH Round #59 - OrzCC杯NOIP模拟赛day1

    题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的Au%20Plan 题解:看了题之后觉得肯定是DP ...

  9. 队爷的新书 CH Round #59 - OrzCC杯NOIP模拟赛day1

    题目:http://ch.ezoj.tk/contest/CH%20Round%20%2359%20-%20OrzCC杯NOIP模拟赛day1/队爷的新书 题解:看到这题就想到了 poetize 的封 ...

随机推荐

  1. F查询与Q查询

    F查询 如果我们要对两个字段的值做比较,那该怎么做呢? Django 提供 F() 来做这样的比较.F() 的实例可以在查询中引用字段,来比较同一个 model 实例中两个不同字段的值. # 查询评论 ...

  2. LeetCode(154) Find Minimum in Rotated Sorted Array II

    题目 Follow up for "Find Minimum in Rotated Sorted Array": What if duplicates are allowed? W ...

  3. nRF52-PCA10040——Overview

    Overview Zephyr applications use the nrf52_pca10040 board configuration to run on the nRF52 Developm ...

  4. micrium ucprobe使用笔记

    前段时间在学习ucos-iii的时候,用到了micrium ucprobe,发现在调试的时候,很方便,可以直观的看到任务的运行使用情况,全局变量的值变化等,当然详细的可以参考官方文档,也可以参考网上的 ...

  5. 新游发布:《Don't touch the color》

    这是笨猫工作室最后一个Scratch 2.0游戏,经过笨猫工作室成员的不懈努力,游戏终于可以稳定运行.此次更新添加了最高分数显示,优化了系统流畅度.快来试玩吧!!! 卡搭蓝链:https://kada ...

  6. HDU 3594 Cactus 有向仙人掌图判定

    题意 给出一个有向图,并给出仙人掌图的定义 图本身是强连通的 每条边属于且只属于一个环 判断输入的图是否是强连通的. 分析 杭电OJ上的数据比较弱,网上一些有明显错误的代码也能AC. 本着求真务实的精 ...

  7. BNU 3692 I18n 模拟

    题意: 在一篇文章中,单词可以缩写.例如单词Internationalization可以缩写为I18n,缩写的两端是原单词的首尾字母,中间的数字是被省略的字母的个数. 现在给你一篇缩写的文章,输出展开 ...

  8. Pycharm Django开发(一)设置开发环境

    一 由于我是一个对开发环境有强迫症的人,在装完PYTHON 2.6 3.3  3.4中,在创建Django工程的时候,会出现N个版本的python,那么在这里可以设置你喜欢和要使用的版本.

  9. FFT、NTT学习笔记

    参考资料 picks miskcoo menci 胡小兔 unname 自为风月马前卒 上面是FFT的,学完了就来看NTT吧 原根 例题:luogu3803 fft优化后模板 #include < ...

  10. luogu2577 [ZJOI2005]午餐

    dp[i]表示第一队打饭时间i的最优解 #include <algorithm> #include <iostream> #include <cstring> #i ...