https://github.com/aleksandarhaber/three-must-know-approaches-for-computing-the-fibonacci-sequence-in-cpp