Skip to content

Instantly share code, notes, and snippets.

@vasi
Created January 28, 2018 10:30
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vasi/ae3b25ce7bfd7540be6c3970b9a0a4f6 to your computer and use it in GitHub Desktop.
Save vasi/ae3b25ce7bfd7540be6c3970b9a0a4f6 to your computer and use it in GitHub Desktop.
Dumbest fibonacci ever
#!/usr/bin/env ruby
def fib0(a)
0.upto(a.size-1) { |i| a[i] += 1 }
end
def fib1(a)
fib0(a)
end
def fib2(a)
fib1(a)
fib0(a)
end
def fib3(a)
fib2(a)
fib1(a)
end
def fib4(a)
fib3(a)
fib2(a)
end
def fib5(a)
fib4(a)
fib3(a)
end
def fib6(a)
fib5(a)
fib4(a)
end
def fib7(a)
fib6(a)
fib5(a)
end
def fib8(a)
fib7(a)
fib6(a)
end
def fib9(a)
fib8(a)
fib7(a)
end
def fib10(a)
fib9(a)
fib8(a)
end
def fib11(a)
fib10(a)
fib9(a)
end
def fib12(a)
fib11(a)
fib10(a)
end
def fib13(a)
fib12(a)
fib11(a)
end
def fib14(a)
fib13(a)
fib12(a)
end
def fib15(a)
fib14(a)
fib13(a)
end
def fib16(a)
fib15(a)
fib14(a)
end
def fib17(a)
fib16(a)
fib15(a)
end
def fib18(a)
fib17(a)
fib16(a)
end
def fib19(a)
fib18(a)
fib17(a)
end
def fib20(a)
fib19(a)
fib18(a)
end
def fib21(a)
fib20(a)
fib19(a)
end
def fib22(a)
fib21(a)
fib20(a)
end
def fib23(a)
fib22(a)
fib21(a)
end
def fib24(a)
fib23(a)
fib22(a)
end
def fib25(a)
fib24(a)
fib23(a)
end
def fib26(a)
fib25(a)
fib24(a)
end
def fib27(a)
fib26(a)
fib25(a)
end
def fib28(a)
fib27(a)
fib26(a)
end
def fib29(a)
fib28(a)
fib27(a)
end
def fib30(a)
fib29(a)
fib28(a)
end
def fib(n)
a = [0] * 10000
send("fib" + n.to_s, a)
a.reduce(0, &:+) / a.size
end
n = ARGV.shift
puts fib(n)
@ilyazub
Copy link

ilyazub commented Dec 10, 2020

This made me laugh 👍 🤣 I know it's written as an example for PR to rbspy but it's just great anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment