【免费题库】华为OD机试 - 螺旋数字矩阵(Java & JS & Python & C & C++)

CSDN 2024-07-03 13:35:02 阅读 66

文章目录

题目描述

输入描述

输出描述

解题思路:

题目描述

疫情期间,小明隔离在家,百无聊赖,在纸上写数字玩。他发明了一种写法:

给出数字个数 n (0 < n ≤ 999)和行数 m(0 < m ≤ 999),从左上角的 1 开始,按照顺时针螺旋向内写方式,依次写出2,3,…,n,最终形成一个 m 行矩阵。

小明对这个矩阵有些要求:

每行数字的个数一样多

列的数量尽可能少

填充数字时优先填充外部

数字不够时,使用单个 * 号占位

输入描述

两个整数,空格隔开,依次表示 n、m

输出描述

符合要求的唯一矩阵

用例1

输入

9 4

输出

1 2 3

4

9 * 5

8 7 6

说明

9个数字写出4行,最少需要3列

用例2

输入

3 5

输出

1

2

3

*

*

说明

3个数字写5行,只有一列,数字不够用*号填充

用例3

输入

120 7

输出

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 19

45 84 85 86 87 88 89 90 91 92 93 94 95 96 9



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。