4

Conor Hoekstra は最近、APL の Leetcode 問題を解決しましたhttps://youtu.be/QtvvQ7MdwKYx問題は、文字列から最初の単語を取得することですy

J では、&.(Under) と;:(Words) を使用して、素敵な明示的なワンライナーを思いつくことができます

solve =. 4 : 'x&{.&.;: y'         NB. Box words in y -> take first x-> unbox words in result while retaining spaces between
   s=. 'Hello how are you Contestant'
   4 solve s
Hello how are you

私が抱えている問題は、主に動詞の作成中にバインドする必要がある&.と信じているため、まだ含まれている暗黙のバージョンを見つけることです。これも魔法変換が役に立たない例x{.13 :

   13 : 'x&{.&.;: y'
4 : 'x&{.&.;: y'

;:^:_1を使用して逆を作成することで、暗黙のうちに解決できます;:

   solve2=. (;:^:_1)@:({. ;:)
   4 solve2 s
Hello how are you

しかし、それは の暗黙のバージョンほどきれいではありませ4 : 'x&{.&.;: y'ん。
誰もかなり暗黙の解決策を持ってい4 : 'x&{.&.;: y'ますか?

4

2 に答える 2