actionscript-3 - 找到 2's and 3' s 使得总和是给定的数字

标签 actionscript-3 math

我需要将一个数字分解为随机排列的 2 和 3 序列。

例如:

  • 5 可以是 3,2 或 2,3
  • 6 可以是 3,3

我目前正在使用 ActionScript 3 中的循环来执行此操作,但一直在研究使用某种数学公式来节省几行代码的可能性。在数学方面我有点笨拙,但我还没有找到合适的东西。

有谁知道这样的事情是否存在?

谢谢,

嘎嘎

最佳答案

假设您尝试分解为 2a+3b 的数字是 n。拆分:

n = 6*(n/6-1) + 6+(n%6)

其中 % 是模数,/ 是整数除法。第一部分可以被 6 整除,因此可以写成 2+2+2 或 3+3 的序列。对于第二部分,使用某种表格进行选择。因为它总是在 6 到 11 之间,所以所有的数字都可以。

6+(n%6) | sum
--------+----
   6    | 3+3
   7    | 2+2+3
   8    | 2+3+3
   9    | 3+3+3
  10    | 3+3+2+2
  11    | 3+3+3+2

这样做的好处包括您可以改变 3 和 2 的数量,并且您不必使用任何类型的低效循环。

关于actionscript-3 - 找到 2's and 3' s 使得总和是给定的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5348933/

相关文章:

flash - 如何绕过 "Adobe Flash Player has stopped a potentially unsafe operation."?

actionscript-3 - ExternalInterface 是否适用于文件 : protocol?

apache-flex - Flex Datagrid 中的键盘导航

math - 方案函数对偶数求和

flash - 最好的 Flash 音频/视频 + 交互服务器?

flash - 使用 ActionScript 3/Flash 在线条上应用颜色渐变

javascript - 查找 LatLng Coord 是否位于其他两个 LatLng Coords 之间

java - 求和数组值java

parsing - 从中缀转换为后缀然后在数学评估器上构建 AST 是否习惯?

php - 加在一起 ​​MySQL values 论坛专栏