合工大 OJ 1332 蛇形阵
2024-08-22 15:13:53
Description
蛇形针回字阵:
如3*3:
回字阵:
7 6 5
8 1 4
9 2 3
Input
多组数据:
每一行一个正整数n(n为奇数,<26),代表n*n矩阵。
Output
输出回字阵(字段宽度为4).
Sample Input
5
Sample Output
21 20 19 18 17
22 7 6 5 16
23 8 1 4 15
24 9 2 3 14
25 10 11 12 13
22 7 6 5 16
23 8 1 4 15
24 9 2 3 14
25 10 11 12 13
Source
新生杯
#include<iostream>
#include <cstdio>
using namespace std; int main()
{
int n;
while(cin>>n)
{
int a[n][n];
for(int i=;i<n;i++)
for(int j=;j<n;j++)
a[i][j]=; for(int i=;i<n;i++)//对角线初始化
a[i][i]=(n-i*)*(n-i*)-(n-i*-); for(int i=;i<n;i++)//根据对角线填入数字(左上部分)
{
for(int j=+i;j<n-i-;j++)//上边部分
a[i][j]=a[i][j-]-;
for(int j=+i;j<n-i;j++)//左边部分
a[j][i]=a[j-][i]+;
} for(int i=n-;i>=;i--)//根据对角线填入数字(右下部分)
{
for(int j=n-(n-i+);j>=n--i;j--)//右边部分
a[j][i]=a[j+][i]+;
for(int j=n-(n-i+);j>=n-i;j--)//下边部分
a[i][j]=a[i][j+]-;
} for(int i=;i<n;i++)
{
for(int j=;j<n;j++)
{
printf("%4d",a[i][j]);
}
cout<<endl;
}
}
return ;
}
最新文章
- [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法
- linux 时间同步的2种方法
- Ruby之入门(一)
- sqlite3 命令
- juery与表单中name=";nodeName";引起的冲突
- 如何选择前端框架:ANGULAR VS EMBER VS REACT
- Intent传参数
- 用GDB调试程序(一)
- javascript 中break、 continue、函数不能重载
- Java虚拟机详解05----垃圾收集器及GC参数
- XAML(2) - 依赖属性
- 通用权限底层研究:Web应用限制IP访问的功能实现
- 浅析为什么char类型的范围是 —128~+127
- [android]netd与NetworkManagementService初印象
- Object调用静态方法
- HDU_2048——全错位排列递推公式
- asp.net实现UNIX 时间戳
- HDU 2841 Visible Trees(莫比乌斯反演)
- Ubuntu14.04下SP_Flash_Tool_exe_Linux无法烧录
- 对于	@Autowired注解和@service注解的理解