【问题标题】:Formula for Mapping three values [closed]映射三个值的公式
【发布时间】:2020-10-02 03:03:53
【问题描述】:

您好,我需要一个用于以下映射的公式,我不想要表格,这就是位标签的原因;)

  2 -> 1
  1 -> -1
  0 -> 0

 2 -> -1
 1 -> 1
 0 -> 0

【问题讨论】:

  • 可读版本为int mapping[] = {0, -1, 1};,用法为mapping[left_value]
  • 也许用一张桌子。

标签: c algorithm math bit-manipulation


【解决方案1】:

使用(val>>1)-(val & 1),您将获得第一个结果:

0 -> 0
1 -> -1
2 -> 1

可以通过(val & 1)-(val>>1)获得替代结果:

0 -> 0
1 -> 1
2 -> -1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-09
    • 2023-01-24
    • 2012-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多