|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
/* C++奋斗乐园|C++论坛|算法论坛|ACM/ICPC论坛
82 81 80 79 78 77 76 75 74 73
83 50 49 48 47 46 45 44 43 72
84 51 26 25 24 23 22 21 42 71
85 52 27 10 9 8 7 20 41 70
86 53 28 11 2 1 6 19 40 69
87 54 29 12 3 4 5 18 39 68
88 55 30 13 14 15 16 17 38 67
89 56 31 32 33 34 35 36 37 66
90 57 58 59 60 61 62 63 64 65
91 92 93 94 95 96 97 98 99 100*/
//看到这个方阵,一想到的就是找规律。这个题目规律只有两个 转圈 自加
//转圈就要给数组元素定位,主要做的工作就是找规律然后根据规律用for简化,然后再赋值。
//如果把一圈当作一个循环的话,那整体循环N/2次
#include <iostream>
using
namespace
std;
int
main()
{
const
int
N=10;
//这个就不说了
//先建立一个二维数组
int
a[N][N];
//为了观察运行出的错,先把数组各个元素通通赋为0吧,这样一来,有什么错误在运行时候,一看就能看出来。
for
(
int
i=0;i<N;i++)
for
(
int
j=0;j<N;j++)
{
a[i][j]=0;
}
//试了一下从1赋值,感觉很费事,还是从后往前推吧,最后一个数字是N*N
int
last=N*N;
int
n=N;
//中间变量。
int
i=n-1,j;
//第一个循环要用到i(第54行),所以赋个初值
for
(
int
k=0;k<N/2;k++)
//如果把一圈当作一个循环的话,那整体循环N/2次
{
for
(j=n-1;j>k;j--)
//给100-92赋值
a[i][j]=last--;
for
(i=n-1;i>k;i--)
//给91-83赋值
a[i][j]=last--;
for
(;j<n-1;j++)
//给82-74赋值
a[i][j]=last--;
for
(;i<n-1;i++)
//给73-65
a[i][j]=last--;
//最外面的一圈赋值完成了,进行下一圈。
n--;i--;
}
//显示数组各个元素
for
(
int
i=0;i<N;i++)
for
(
int
j=0;j<N;j++)
{
cout<<a[i][j]<<
"\t"
;
if
(j==N-1)
//这要注意换行。
cout<<endl<<endl;
}
return
0;
}
|
螺旋阵列
微信关注我们
转载内容版权归作者及来源网站所有!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
相关文章
发表评论
资源下载
更多资源Spring
Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。
Rocky Linux
Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。
Sublime Text
Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。
WebStorm
WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。