首页 > TAG信息列表 > P2615
P2615 [NOIP2015 提高组] 神奇的幻方
// Problem: P2615 [NOIP2015 提高组] 神奇的幻方 // Contest: Luogu // URL: https://www.luogu.com.cn/problem/P2615 // Memory Limit: 125 MB // Time Limit: 1000 ms // User: Pannnn #include <bits/stdc++.h> using namespace std; int main() { int n; cin &P2615 [NOIP2015 提高组] 神奇的幻方
P2615 [NOIP2015 提高组] 神奇的幻方 题目描述 幻方是一种很神奇的 N∗N 矩阵:它由数字1,2,3,⋯⋯,N×N 构成,且每行、每列及两条对角线上的数字之和都相同。 当 N 为奇数时,我们可以通过下方法构建一个幻方: 首先将 1 写在第一行的中间。 之后,按如下方式从小到大依次填写每个数KCF710C Magic Odd Square 题解
Content 构造出一个 \(n\times n\) 的矩阵,使得这个矩阵由 \(1\sim n^2\) 这些数字组成,并且这个矩阵的每行,每列,以及对角线的和都为奇数。 数据范围:\(1\leqslant n\leqslant 49\)。\(n\) 为奇数。 Solution 这题其实就是 \(\texttt{NOIP2015}\) 提高组的 \(\texttt{D1T1}\),因为——P2615 神奇的幻方
题目传送门 一、思路总结 需要用二维数组来存储幻方。 因为\(n\)是奇数,那么中间的位置可以描述为\(n/2+1\) 因为每次都是在上一次的位置上进行变化,所以,对于每次操作时,必须知道上一次的位置。 二、完整代码 #include <bits/stdc++.h> using namespace std; const int N =