首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bloons TD 6升级路径

Bloons TD 6升级路径
EN

Code Golf用户
提问于 2022-06-30 17:22:19
回答 7查看 1.7K关注 0票数 14

背景

猴子需要帮助组织他们的防御,并要求你,本杰明代码猴子,创建一个程序,将列出所有塔升级选项。每个塔都有三个唯一的升级“路径”,每个塔都有一个由0到5之间的数字表示的层,这意味着没有升级。最多可选择两条路径进行升级,即包含升级级别1或更高级别。此外,只有一条路径可以包含第三层或更高级别。

任务

以某种合理的格式输出所有有效的升级路径三元组(三元组本身是有序的)。三元组可以以任何合理的方式表示,例如025或0-2-5.三元组必须在某种程度上相互区分,因此不允许使用没有三重分隔符的平面数字列表。

下面是一个示例列表,列出了所有64个可能的三元组,它们在游戏中显示为您的insta-猴子集合:

代码语言:javascript
复制
5-2-0
5-0-2
5-1-0
5-0-1
5-0-0
2-5-0
0-5-2
1-5-0
0-5-1
0-5-0
2-0-5
0-2-5
1-0-5
0-1-5
0-0-5
4-2-0
4-0-2
4-1-0
4-0-1
4-0-0
2-4-0
0-4-2
1-4-0
0-4-1
0-4-0
2-0-4
0-2-4
1-0-4
0-1-4
0-0-4
3-2-0
3-0-2
3-1-0
3-0-1
3-0-0
2-3-0
0-3-2
1-3-0
0-3-1
0-3-0
2-0-3
0-2-3
1-0-3
0-1-3
0-0-3
2-2-0
2-0-2
2-1-0
2-0-1
2-0-0
0-2-2
1-2-0
0-2-1
0-2-0
1-0-2
0-1-2
0-0-2
1-1-0
1-0-1
1-0-0
0-1-1
0-1-0
0-0-1
0-0-0
EN

回答 7

Code Golf用户

发布于 2022-06-30 21:10:49

外壳,10字节

代码语言:javascript
复制
uΣmPΠmŀ∫ḣ3

在网上试试!

类似于我的K答案。

代码语言:javascript
复制
       ∫ḣ3  -- cumulative sums of [1..3] -> [1,3,6]
     mŀ     -- lowered range of each     -> [[0],[0,1,2],[0,1,2,3,4,5]]
    Π       -- cartesian product of the three lists
  mP        -- for each triplet, get all permutations
 Σ          -- flatten into a list of triplets
u           -- get the unique ones
票数 3
EN

Code Golf用户

发布于 2022-07-04 06:22:13

Python 3,75字节

代码语言:javascript
复制
print([r for r in[(x//36,x//6%6,x%6)for x in range(216)]if[0,3]>sorted(r)])

在网上试试!

票数 2
EN

Code Golf用户

发布于 2022-07-01 00:13:36

木炭,26字节

代码语言:javascript
复制
ΦEφ﹪%03dι∧№ι0∧›6⌈ι›²ΣEι‹2λ

在网上试试!链接是详细的代码版本。解释:

代码语言:javascript
复制
  φ                         Predefined variable `1000`
 E                          Map over implicit range
        ι                   Current value
   ﹪%03d                    Formatted to 3 0-filled digits
Φ                           Filtered where
           ι                Current value
          №                 Contains
            0               Literal string `0`
         ∧                  Logical And
               6            Literal string `6`
              ›             Is greater than
                 ι          Current value
                ⌈           Maximum character
             ∧              Logical And
                   ²        Literal integer `2`
                  ›         Is greater than
                      ι     Current value
                     E      Map over digits
                        2   Literal string `2`
                       ‹    Is less than
                         λ  Current digit
                    Σ       Take the sum
                            Implicitly print

更漂亮版本的28个字节:

代码语言:javascript
复制
ΦEφ⪫﹪%03dι-∧№ι0∧›6⌈ι›²ΣEι‹2λ

在网上试试!链接是详细的代码版本。

票数 1
EN
页面原文内容由Code Golf提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codegolf.stackexchange.com/questions/249343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档