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'
ますか?