V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Balthild
V2EX  ›  数学

关于螺旋矩阵

  •  
  •   Balthild · 2016-06-07 00:34:22 +08:00 via Android · 4170 次点击
    这是一个创建于 2852 天前的主题,其中的信息可能已经有所发展或是发生改变。
    刚刚在 Leetcode 上做了一下螺旋矩阵的题目,用的是模拟路径来变换 x y 坐标的办法。

    做完之后去网上找了一下别人的算法,发现也几乎都是这个思路(不过他们模拟路径用的方法比我高级多了)。

    然后我突然想到,如果给定一个矩阵边长 n ,生成的矩阵是确定的,那么在指定的坐标 (x, y) 处的数也一定是确定的,即 f(n, x, y) 是一个确定的函数。那有没有可能求出这个函数的代数表达式呢?

    PS: 给定边长 n ,从外向内顺时针生成 n * n 矩阵
    如给定 4 ,则生成
    1 2 3 4
    12 13 14 5
    11 16 15 6
    10 9 8 7

    怎么用不了 Markdown 了!!
    2 条回复    2016-06-07 00:58:17 +08:00
    debiann
        1
    debiann  
       2016-06-07 00:50:59 +08:00 via iPhone
    可以。比如你生成数字的函数是 g(l),你实际需要找的关系是如何通过 n.x.y 得到 l 。外面走完的一堆圈是等差数列,再加上中间走到一半的圈,蛮好写的关系。这个函数其实就是 g(l(n.x.y))这个样子
    debiann
        2
    debiann  
       2016-06-07 00:58:17 +08:00 via iPhone
    @debiann 最后那个 g(l(n.x.y))可能会引起混淆,写得不合适,忽略吧
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1388 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 17:32 · PVG 01:32 · LAX 10:32 · JFK 13:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.