fork download
  1. #include <iostream>
  2.  
  3. #define u return
  4. using i=unsigned long long;using t=void*;
  5.  
  6. using namespace std;
  7.  
  8. int main() {
  9. // Fibonacci number to calculate
  10. i x = 93;
  11.  
  12. i fibx =
  13. [](i n)
  14. {
  15. u [](i n,i(*s)(i,t))
  16. {
  17. u s(n,(t)s);
  18. }(n,(i(*)(i,t))([](i n,t(s))
  19. {
  20. u (n<4)?n-n/2:[&,n=n&1,i=n/2,t=(i(*)(i,t))s]()
  21. {
  22. u [&,s=t(i+n,s),i=t(i+~-n,s)]()
  23. {
  24. u (n?i:2*s)*i+s*s;
  25. }();
  26. }();
  27. }));
  28. }
  29.  
  30. (x);
  31.  
  32. cout << fibx << endl;
  33. return 0;
  34. }
Success #stdin #stdout 0.01s 5280KB
stdin
Standard input is empty
stdout
12200160415121876738