21 lines
612 B
Plaintext
21 lines
612 B
Plaintext
/* Mutual recursion, is jsish */
|
|
function f(num):number { return (num === 0) ? 1 : num - m(f(num - 1)); }
|
|
function m(num):number { return (num === 0) ? 0 : num - f(m(num - 1)); }
|
|
|
|
function range(n=10, start=0, step=1):array {
|
|
var a = Array(n).fill(0);
|
|
for (var i in a) a[i] = start+i*step;
|
|
return a;
|
|
}
|
|
|
|
var a = range(21);
|
|
puts(a.map(function (n) { return f(n); }).join(', '));
|
|
puts(a.map(function (n) { return m(n); }).join(', '));
|
|
|
|
/*
|
|
=!EXPECTSTART!=
|
|
1, 1, 2, 2, 3, 3, 4, 5, 5, 6, 6, 7, 8, 8, 9, 9, 10, 11, 11, 12, 13
|
|
0, 0, 1, 2, 2, 3, 4, 4, 5, 6, 6, 7, 7, 8, 9, 9, 10, 11, 11, 12, 12
|
|
=!EXPECTEND!=
|
|
*/
|