openjudge 1.8.24 蛇形填充数组
OpenJudge - 24:蛇形填充数组
解题思路:
1.由题可得,输入一个数n,然后构建乘n*n的方阵,将1-n*n的数按照蛇形的方式填入二维数组
2.首先,面对这种题,一定要手动演算一遍会发现遍历的流动方向是和行列号的和有关的,从下标1开始遍历,最小的行列和为2,最大的为n*2,如果行列和是奇数的话,行数是从小到大遍历,列数是从大到小遍历的,只要根据行列和,找到行数和列数相加相等的值,然后通过num赋值就可以,赋值完后num++
3.同理,如果行列和是偶数的话,行数是从大到小开始遍历的,列数是从小到大遍历的,只要满足i+j=行列和,将num赋值,然后再自增
4.最后输出二维数组即可
#include<bits/stdc++.h>
using namespace std;
int a[15][15];
int main()
{int n,num=1;cin>>n;//输入方阵的边长 for(int k=2;k<=n*2;k++)//枚举行列下标的值 {if(k%2==0)//如果行列下标和是偶数的话 {for(int i=n;i>=1;i--)//行数从大到小依次遍历 {for(int j=1;j<=n;j++)//列数从小到大依次遍历 {if(i+j==k)//如果此时的行列相加为k {a[i][j]=num;//将num赋值给这个位置 num++;//数字增加 }}}}else//如果行列下标和是奇数的话 {for(int i=1;i<=n;i++)//行数从小到大遍历 {for(int j=n;j>=1;j--)//列数从大到小遍历 {if(i+j==k)//如果此时的行列相加为k {a[i][j]=num;//将num赋值给这个位置 num++;//数字增加 }}}}}for(int i=1;i<=n;i++)//打印二维数组 {for(int j=1;j<=n;j++)cout<<a[i][j]<<" ";cout<<endl;}return 0;
}
openjudge 1.8.24 蛇形填充数组相关推荐
- OpenJudge NOI 1.8 24:蛇形填充数组
[题目链接] OpenJudge NOI 1.8 24:蛇形填充数组 [题目考点] 1. 二维数组 [解题思路] 解法1:移动焦点 设焦点位置,焦点移动同时为焦点位置赋值.焦点移动规则为: 移动到右上 ...
- c语言蛇形填充数组,蛇形
题目描述 蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形. 例如,当输入5时,应该输出的三角形为: 1 3 6 10 15 2 5 9 14 4 8 13 7 12 11 请注意本题含有多组样 ...
- 蛇形打印数组(某宝典公司面试手撕代码题)
背景杂谈 不知道为什么,可能脑袋一下放空了,一不小心就想到了大约2年前,在某个知名的宝典公司面试中,遇到了一道手撕代码题,和多年前的google的那道螺旋遍历数据有异曲同工之妙.现脑洞大开,想写下与大 ...
- java 可变参数列表 数组_java可变参数列表如何填充数组?
在对于数组的填充上,我们可以运行参数的传递,把数组作为可变参数的列表进行调整.对于一些参数个数和类型未知的时候,这种方法就能帮助我们解决填充数组的难题,因为这种方法并不需要提前知道.下面我们就可变参数 ...
- new 数组_编程-遍历数组元素N次/填充数组至指定长度
需求如下: 有数组 names=["a","b","c"] 需要遍历数组元素n次,比如: n=2时,期待的输出为:a,b n=5时,期待的输 ...
- php向数组前加如指定键的值,PHP array_fill_keys():使用指定的键和值来填充数组
PHP array_fill_keys() 函数使用指定的键和值来填充出一个新数组,其语法如下: array array_fill_keys ( array $keys , mixed $value ...
- c语言字符数组自动填充,数组在C中自动填充
我正在学习C,做一些简单的例子,并发现了这种奇怪的行为. 当填充整数数组的元素时,如果任何元素设置为大于2147483647(我相信是最大整数值?),则数组中的其余元素将设置为该确切数字,每个其中之一 ...
- openjudge 1.5.24 正常血压
OpenJudge - 24:正常血压 解题思路: 1.由题可知,一共有n行,每行包含两个整数,分别对应着收缩压和舒张压,并且直到收缩压在90-140之间是正常的,舒张压在60-90之间是正常的 2. ...
- matlab 填充数组,Matlab自动将数组类型从复数转换为double
我有一个烦人的情况,我无法用我的google-fu解决,所以转向我们的常驻matlab专家寻求帮助. 假设我运行以下代码 "" 我得到以下输出 AA = ones(10,2) + ...
最新文章
- Fastq-dump:我的日常命令
- ASP.NET MVC Routing、Areas、URLs
- Salesforce中所有常用类型字段的取值与赋值
- mysql 排序字段是否需要建索引_MySQL索引详解(优缺点,何时需要/不需要创建索引,索引及sql语句的优化)...
- python不同模块间传递数据_Python模块-数据传送模块
- Mybatis(15)Mybatis延迟加载/缓存
- 【C++基础学习】二维数组的动态分配及参数传递
- 中国双色向滤光镜行业市场供需与战略研究报告
- 二叉搜索树的公共祖先,二叉树的最近公共祖先
- Codeforces 1169A Circle Metro
- Luogu1502 窗口的星星
- 2022年深圳有哪些好玩的小镇古城推荐
- 计算机学模型,计算机数学模型.pdf
- IDEA中集成使用SVN
- MATLAB常用数据导入
- Labview学习之波形图表的历史数据
- 【AIGC使用教程】Notion AI 从注册到体验:如何免费使用
- EBS MO_GLOBAL包的分析
- 如何理解向量组的秩和矩阵的秩
- 2010年IT十大人物猜想