Skip to content

Instantly share code, notes, and snippets.

@crides
Last active December 16, 2021 09:02
Show Gist options
  • Select an option

  • Save crides/636db7ca1460510d8d099602f771eca7 to your computer and use it in GitHub Desktop.

Select an option

Save crides/636db7ca1460510d8d099602f771eca7 to your computer and use it in GitHub Desktop.
s1a: {+/>':.:'x}
s1b: {1+/>':+/'(3'.:'x)}
s2a: */+/.'"forward:{x,0};up:{0,-x};down:{0,x};",/:
s2b: */2#{@[x+y;1;((y@0)*x@2)+]}/.'"forward:{x,0,0};up:{0,0,-x};down:{0,0,x};",/:
s3a: {*/2/'(n;~n:(-2!#x)<(+/.')'+x)}
s3b: {
in:.''x
g:*in{ $[1=#x;x;{c:((+y)[x]);c=((#y)%2)<0.5++/c}[y]#x]}/!#*in
b:*in{ $[1=#x;x;{c:((+y)[x]);~c=((#y)%2)<0.5++/c}[y]#x]}/!#*in
(2/g)*(2/b)}
s4a: {
(.''{~(+/(""~)')'x}#5':2_x){
$[`i=@x;:x;]
w:{|/5=+/'0>(x,+ x)}
n:({5 5#{i:y?x;$[^i;y;@[y;y?x;{-1}]]}[x;,/y]}@y)'x
$[|/w'n;y*+/(0<)#,/*(w')#n;n]}/.*x}
s5a: {
p:{.'(" "\x)[0 2]}'x
f:({|/=/x}')#p
r:,/{(s;e):x@<x;({~|/'x>/:y}[s])#(+!1+e)}'f
+/1<.#'=r}
s5b: {
p:{.'(" "\x)[0 2]}'x
r:,/{
(s;e):x@<x
c:|/d:e-s
(a;b):(1&-1|)'d
v:(1 -1;0;1 0;0 1;1 1)[1+2/b,a]
(s+/:v*/:!c),+e}'p
+/1<.#'=r}
s6: {{(#x)++/x}@({(&0,7,2,x-9){@[x;y;{z;1++/x@y-7,9}[x;y]]}/9+!x-9}@y)@y-1+x}
s6a: {s6[{.*x}'","\*x;80]}
s6b: {s6[{.*x}'","\*x;256]}
s7a: {
i:.'","\*x / input
t:|/i / max (top)
l:i{+/{$[x<0;-x;x]}'x-y}/:!1+t / fuel
&/l}
s7b: {
i:.'","\*x / input
t:|/i / max (top)
l:i{+/{+/1+!$[x<0;-x;x]}'x-y}/:!1+t / fuel
&/l}
s8a: +/{+/~^2 3 4 7?#'" "\*1_x}'" | "\'
/ seven ^ one -> a
/ numbers -> b e f
/ one ^ f -> c
/ four ^ bcf -> d
/s8bi: {
/ (l;r):" "\'" | "\x
/ n:#'=,/l
/ G:{*{x=#'y}[y]#x}l
/ C:{*({z;x=y}[y;.x])#!x}@n
/ N:"abcefg";"cf";"acdeg";"acdfg";"bcdf";"abdfg";"abdefg";"acf";"abcdefg";"abcdfg"
/ 10/N?v}
/s8b: s8bi'
f:{{(v;i):y;&/v<9^'x[i+1 -1]}[x]'+(x;!#x)}
s9a: {;{(#x)++/x}t ./:+&{(f@'x)&+f@'+x}@t:.''x}
/ f:{{(v;i):y;&/v>9^'x[i+1 -1]}[x]'+(x;!#x)}
/ g:{{(v;i):z;&/(~v=9)&9=0^x[i+y]}[x;y]'+(x;!#x)}
/ e:(({g[x;1]}@'t)|{g[x;-1]}@'t)&+(({g[x;1]}@'+t)|{g[x;-1]}@'+t)
/ r:e{.[x;y;:;0N]}/+&t=9
/ p:{{(v;i):y;s:+/0^'x[i+1 -1];$[e[i]&v<s;s;x@i]}[x]'+(x;!#x)}
/ i:{(y*~x)+x*(p@'y)++p@'+y}
/ I:i[(~e)&~^r]
/ / s:{(p@'x)+(x=0)*+p@'+x}/r
/ s ./:+&{(f@'x)&+f@'+x}
s13a: {
e:x?""
(a;i):"="\*|" "\x[1+e]
m:.'x[!e]
r:$[*a="x";m;|'m]
#={(a;b):y;($[a>x;(2*x)-a;a];b)}[.i]'r}
s13b: {
m:.'x[!x?""]
i:{"="\*|" "\x}'{~^x?\:"f"}#x
a:m{
(a;i):y
s:*a="x"
r:$[s;x;|'x]
t:{(a;b):y;($[a>x;(2*x)-a;a];b)}[.i]'r
$[s;t;|'t]}/i
X:|/*'a
Y:|/*'|'a
+((1+X,Y)#" "){.[x;y;:;"#"]}/a}
s14a: {
i:*x
m:!/+" -> "\'2_x
{(|/x)-&/x}@.#'=10{(*y),,/{(x y),*|y}[x]'2':y}[m]/i}
s14b: {
i:*x
m:!/+" -> "\'2_x
f:{[m;x] +/,/(!x){((a;b);m):(y;*x y);(((,a,m)!z);((,m,b)!z))}[m]'.x}
r:40(f[m])/#'=2':i
s:+(+((*i),1)),{(1_*x),*|x}'+{((!x);.x)}@r
*{(|/x)-&/x}@1_'+g@s}
s15: {-1+*|*|x{(r;c):y;.[x;y;+;(9999^x[r;c-1])&9999^x[r-1;c]]}/1_+!2##x}
s15a: {s15@.''x}
s15b: {
w:5*#x
t:w#w#'.''x
i:+!2##t
s15@t{.[x;y;{{$[0=x;9;x]}@9!x+y};+/-10!y]}/i}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment