当前位置:   article > 正文

华为OD机试 Python 【螺旋数字矩阵】

华为OD机试 Python 【螺旋数字矩阵】

题目

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

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

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

每行数字的个数一样多
列的数量尽可能少
填充数字时优先填充外部
数字不够时,使用单个 * 号占位
输入描述
两个整数,空格隔开,依次表示 n、m

输出描述
符合要求的唯一矩阵

用例
输入 9 4
输出 1 2 3

* * 4
9 * 5
8 7 6
  • 1
  • 2
  • 3

说明:9个数字写出4行,最少需要3列
输入 3 5
输出

1
2
3
*
*
  • 1
  • 2
  • 3
  • 4
  • 5

说明:3个数字写5行,只有一列,数字不够用*号填充
输入 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 97 98 63 20
44 83 114 115 116 117 118 119 120 * * * * * * 99 64 21
43 82 113 112 111 110 109 108 107 106 105 104 103 102 101 100 65 22
42 
  • 1
  • 2
  • 3
  • 4
  • 5
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/444727
推荐阅读
相关标签
  

闽ICP备14008679号