gpt4 book ai didi

j - 了解从 J 中的列表添加

转载 作者:行者123 更新时间:2023-12-05 00:13:28 24 4
gpt4 key购买 nike

我正在阅读一本关于 J 的书并得到了练习的答案,但我无法理解它们为什么起作用。

这是问题:

Peter and Paul’s golf scores are given turn about in the form of a list "y.", for example 3 4 4 4 5 6 3 3 7 2 etc. Write an expression which gives the difference between the total of Peter’s scores and the total of Paul’s scores. Write a further expression which obtains the total scores for both Peter and Paul over 18 holes.



第一个问题的答案是:
-/y

我知道这是在列表中的每个项目之间插入 n-1 个减法符号,有效地获得每个洞的分数差异,并在最后给你总和。

第二个问题的答案是:
(36$0 1)+//.y

我不明白如何思考这个答案。从右到左,
  • 您正在选择列表“y”
  • 将动词的 n-1 个副本插入该列表
  • 然后“+/”告诉你你会以一种特定的方式来做...
  • 括号二元告诉你......?这是我迷路的地方。

  • 显然,它告诉解释器交替对原子求和,产生两个总和。但我不明白如何/为什么。

    我很感激你们能提供的任何启示。 :)

    最佳答案

    使用 key /. :

    key x v/. y应用动词 vy 的所有元素上但是 分组X:

    0 0 1 0 1 2 < /. 1 2 3 4 5 6
    ┌─────┬───┬─┐
    │1 2 4│3 5│6│
    └─────┴───┴─┘

    0 0 1 0 1 2 +/ /. 1 2 3 4 5 6
    7 8 6

    在您的情况下,分组是 (36 $ 0 1)要应用的动词是 +/ (比方说 y =: i.36 ):
    36 $ 0 1
    0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
    (36 $ 0 1) < /. y
    ┌────────────────────────────────────────────────┬────────────────────────────────────────────────┐
    │0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34│1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35│
    └────────────────────────────────────────────────┴────────────────────────────────────────────────┘
    (36 $ 0 1) +//. y
    306 324

    对于这个特定的问题,我更愿意做的是形状 $ y适本地,只需对相应的轴求和。例如:
    18 2 $ y     NB. or even better _2 ,\y
    0 1
    2 3
    4 5
    ...
    +/ 18 2 $ y
    306 324

    关于j - 了解从 J 中的列表添加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48549988/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com