题目

输入整数 N,输出一个 N 阶的二维数组。

数组的形式参照样例。

输入格式

输入包含多行,每行包含一个整数 N。

当输入行为 N=0 时,表示输入结束,且该行无需作任何处理。

输出格式

对于每个输入整数 N,输出一个满足要求的 N 阶二维数组。

每个数组占 N 行,每行包含 N 个用空格隔开的整数。

每个数组输出完毕后,输出一个空行。

数据范围

0≤N≤100

输入样例:

1
2
3
4
5
0

输出样例:

11 2
2 11 2 3
2 1 2
3 2 11 2 3 4
2 1 2 3
3 2 1 2
4 3 2 11 2 3 4 5
2 1 2 3 4
3 2 1 2 3
4 3 2 1 2
5 4 3 2 1

源代码

#include<iostream>
using namespace std;
int main()
{int N;while(cin>>N,N!=0)//多实例输入,N=0结束输入 {int a[100][100]={0},i,j;//开辟数组创建空坑位0 a[0][0]=1;for(i=0;i<N;i++)//对于二维数组进行最上边和最左边数据的补入 {for(j=0;j<N;j++){a[0][j]=j+1;a[i][0]=i+1;if(i==j)a[i][j]=1;}}for(i=0;i<N;i++)//因二重for循环是从上往下从左到右遍历二维数组 {for(j=0;j<N;j++){if(a[i+1][j-1]==0)a[i+1][j-1]=a[i][j];//对于下一行凡是对角线且空坑位的元素进行数据补充 if(a[i+1][j+1]==0)a[i+1][j+1]=a[i][j];}}for(i=0;i<N;i++)//输出二维数组 {for(j=0;j<N;j++){printf("%d ",a[i][j]);}printf("\n");}printf("\n");//记得对应输出格式 }
}

Python3解法

while True:##多实例输入N=int(input())if N==0:##如果输入为0则跳出breaknum=[[0]*1000 for i in range(1000)]##自定义数组数据要开的足够大for i in range(N):##对N*N的矩阵所有元素赋值for j in range(N):num[i][j]=0for i in range(N):for j in range(N):if i==j:##对角线元素全为1num[i][j]=1num[0][j]=j+1##横轴元素递增num[i][0]=i+1##纵轴元素递增for i in range(N):for j in range(N):##因二维数组的逐层遍历从上至下,将二维数组中不为零的元素赋为其对角线元素值if num[i+1][j-1]==0 and i+1<N and j-1>=0:num[i+1][j-1]=num[i][j]##对角线下左元素if num[i+1][j+1]==0 and i+1<N and j+1<N:num[i+1][j+1]=num[i][j]##对角线下右元素for i in range(N):##输出二维数组for j in range(N):print(str(num[i][j])+" ",end="")print("")print("")##注意格式

AcWing754. 平方矩阵 II相关推荐

  1. AcWing 754. 平方矩阵 II

    文章目录 AcWing 754. 平方矩阵 II AC代码 AcWing 754. 平方矩阵 II 本题链接:AcWing 754. 平方矩阵 II 本博客给出本题截图: AC代码 代码: #incl ...

  2. 754. 平方矩阵 II

    754. 平方矩阵 II 输入整数 N,输出一个 N 阶的二维数组. 数组的形式参照样例. 输入格式 输入包含多行,每行包含一个整数 N. 当输入行为 N=0 时,表示输入结束,且该行无需作任何处理. ...

  3. 【寒假每日一题】平方矩阵 II(个人练习)详细题解+推导证明(第十四天)

    文章目录 前言 题目 详细题解 写法1 O(n2)O(n^2)O(n2) 推导证明 写法2 O(n2)O(n^2)O(n2) 推导证明 写法3 O(n2)O(n^2)O(n2) 推导证明 举一反三 总 ...

  4. 平方矩阵 I II III 题解

    AcWing 753. 平方矩阵 I 题目描述 AcWing 753. 平方矩阵 I 思路 每个点处的值为该位置到上下左右四个边界距离的最小值. 代码 import java.util.Scanner ...

  5. 随想录一期 day2 [977.有序数组的平方|209. 长度最小的子数组|59.螺旋矩阵II(剥洋葱)]

    977.有序数组的平方 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序. 思路 递增数组,平方后最大值一定在最左侧或者最右侧,可想到– ...

  6. 代码随想录算法训练营第二天| 977. 有序数组的平方、209. 长度最小子数组、59.螺旋矩阵II、数组总结

    目录: 977.有序数组的平方 209.长度最小的子数组 1.暴力输出法 2.滑动窗口法 59.螺旋矩阵II 总结: 今日收获: 977.有序数组的平方 因为是递增且有负数的数组,那么他们的平方如果还 ...

  7. 代码随想录第二天|977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II ,总结

    (本文主要是用于个人笔记的书写,很多地方的使用可能并不专业,如需学习更加建议移步代码随想录官网代码随想录 (programmercarl.com))) 1.有序数组的平方: ----双指针法:因为平方 ...

  8. 代码随想录Day02 | LeetCode977.有序数组的平方、LeetCode209.长度最小的子数组、LeetCode59.螺旋矩阵II

    977.有序数组的平方 力扣题目链接(opens new window) 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序. 示例 1: ...

  9. Leonard代码随想录算法训练营第二天| 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II。

    第一章数组 (今日任务) 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II ,总结 建议大家先独立做题,然后看视频讲解,然后看文章讲解,然后在重新做一遍题,把题目AC,最后整理 ...

最新文章

  1. linux之权限和chmod、chown命令
  2. cocos 禁掉快速点击_win10系统快速运行debug程序的技巧
  3. 入职后,如何判断公司值不值得长期待下去?
  4. 11个方法,打造用户增长体系
  5. 拿来即用的 Python 时间范围判断方法
  6. dataframe scala 修改值_Spark DataFrame:提取某列并修改/ Column更新、替换
  7. Tomcat运行时报内存溢出
  8. 微服务笔记(二) 服务发现
  9. 微信小程序icon图标引入
  10. win10 软路由_破费装了台LEDE软路由,测试WAN口能否跑万兆(中篇)
  11. 赛马问题--最全面的解析
  12. win10时间线时间轴(Timeline)如何关闭隐藏?
  13. Unity WebGL 获取当期时间DateTime.Now异常问题
  14. 常用第三方SDK目录
  15. 输出两个数之间的水仙花数C++
  16. 外卖订单爬虫 定时自动抓取三大外卖平台上商家订单
  17. 2020新冠疫情下如何防范恶意软件攻击避免数据泄露?
  18. 哈工大计算机考研 跨考,2011年哈工大计算机考研经验_跨考网
  19. 土壤湿度遥感监测 - 植被指数/地表温度与土壤湿度
  20. 理解ROM,PROM,EPROM,EEPROM,RAM,DRAM,SRAM,FLASH是什么

热门文章

  1. Android传感器应用
  2. SSM框架实现图片上传并查询数据库中的图片(多图片上传请看下篇博客)
  3. 【Linux练习生】基础IO(详细)
  4. python 热度图_matplotlib 如何画出热度图heatmap?
  5. Alien Skin Exposure X3 3.0.5.157 简体中文完美汉化版最新版下载
  6. 大数据、人工智能等技术在智慧校园建设中的具体应用有哪些
  7. 戴尔+VMware:强强联手,共赴“云原生”新征程
  8. vscode 一键规范代码格式
  9. 2019-pycharm下载破译一起搞定
  10. R语言对表达谱样本做PCA分析