|
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业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
相关文章
发表评论
资源下载
更多资源优质分享App
近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。
腾讯云软件源
为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。
Nacos
Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。
Rocky Linux
Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。