代码之家  ›  专栏  ›  技术社区  ›  Thunder

分别取3,1,2并返回1,2,3的函数,反之亦然

  •  -4
  • Thunder  · 技术社区  · 15 年前

    例:f(1)=3 f(3)=2

    1向右时为2,2为3,3为1。

    6 回复  |  直到 15 年前
        1
  •  1
  •   mtrw    15 年前

    在Python中:

    def f(x):
        return ((x+4)%3)+1
    

    int f(int x)
    {
        switch(x)
        {
        case 1: return 3;
        case 2: return 1;
        case 3: return 2;
        default: return x;
        }
        return x;
     }
    

    尽管mod(%)解决方案在C中也可以工作。

        2
  •  5
  •   Chris Moutray    15 年前

    function(x)
    {
        if (x == 1) return 3;
        if (x == 2) return 1;
        if (x == 3) return 2;
        !throw some unsupported error!
    }
    
        3
  •  3
  •   Damien_The_Unbeliever    15 年前

    f(x)=地板(3/x)+地板(x/3)

        4
  •  3
  •   mrjoltcola    15 年前

    f(x)=(x+1)模式3+1

        5
  •  2
  •   Matt Huggins    15 年前

    你只需要做你自己的事:

    function(x) {
      var lookup = [3, 1, 2];
      return lookup[x - 1];
    }
    
        6
  •  1
  •   hallie    15 年前