我有一个 list
n =: i.3
我想要一个副词 使得 你和 n 适用 u 到 的后缀的前缀 :
<a n
┌─────────────┬───────┬───┐
│┌─┬───┬─────┐│┌─┬───┐│┌─┐│
││0│0 1│0 1 2│││1│1 2│││2││
│└─┴───┴─────┘│└─┴───┘│└─┘│
└─────────────┴───────┴───┘
我写了一个句子,为动词 产生了理想的结果< :
([: <@]\&.> <@]\.) n
┌─────────────┬───────┬───┐
│┌─┬───┬─────┐│┌─┬───┐│┌─┐│
││0│0 1│0 1 2│││1│1 2│││2││
│└─┴───┴─────┘│└─┴───┘│└─┘│
└─────────────┴───────┴───┘
但我不知道如何制作一个副词来与任何动词一起使用。
我看到了解决这个问题的另一种方法:
a =: \\.
<a n
┌─┬───┬─────┐
│0│0 1│0 1 2│
├─┼───┼─────┤
│1│1 2│ │
├─┼───┼─────┤
│2│ │ │
└─┴───┴─────┘
([: < (a: ~: ]) # ])"1(<a n)
┌─────────────┬───────┬───┐
│┌─┬───┬─────┐│┌─┬───┐│┌─┐│
││0│0 1│0 1 2│││1│1 2│││2││
│└─┴───┴─────┘│└─┴───┘│└─┘│
└─────────────┴───────┴───┘
但它也是专门为而写的< ,而且可能效率不高。我仍然不知道如何制作副词。
如果我能得到以下结果就更好了:
<a n
┌─┬───┬─────┬─┬───┬─┐
│0│0 1│0 1 2│1│1 2│2│
└─┴───┴─────┴─┴───┴─┘
例如:
(10&#.)a n
0 1 12 1 12 2
请帮帮我。提前致谢。
最佳答案
(几乎)已经有一个副词了。这是Spread ( S:
)您想申请的级别 0
.
例如。
<\ each <\. n
┌─────────────┬───────┬───┐
│┌─┬───┬─────┐│┌─┬───┐│┌─┐│
││0│0 1│0 1 2│││1│1 2│││2││
│└─┴───┴─────┘│└─┴───┘│└─┘│
└─────────────┴───────┴───┘
< S:0 <\ each <\. n
┌─┬───┬─────┬─┬───┬─┐
│0│0 1│0 1 2│1│1 2│2│
└─┴───┴─────┴─┴───┴─┘
+/ S:0 <\ each <\. n
0 1 3 1 3 2
(10&#.) S:0 <\ each <\. n
0 1 12 1 12 2
换句话说,您的
a
可能是这样的:a =: 1 :'u S: 0 ([: <\&.><\.) y'
(编辑)或者,正如@Tikkanz 在下面的评论中所说,你可以避免
S:
并使用更有效的:a=: 1 : ';@([: u\&.> <@]\.)'
或者
a=: 1 : ';@(<@(u\)\.)'
关于list - J:如何有效地将动词应用于后缀的前缀?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25978980/