fork download
  1. #include <iostream>
  2. using namespace std;
  3. typedef unsigned long long int ull;
  4.  
  5. volatile ull f1(volatile ull i) {return i ? i+f1(i-1) : 0;}
  6.  
  7. volatile ull f2(volatile ull i, volatile ull r) {
  8. return i ? f2(i-1, i+r) : r;}
  9.  
  10. void test(ull i) {
  11. cout << "i: " << i << endl;
  12. cout << "f2: " << f2(i, 0) << endl;
  13. cout << "f1: " << f1(i) << endl;
  14. }
  15. int main() {
  16. test(10000);
  17. test(1000000);
  18. return 0;
  19. }
Runtime error #stdin #stdout 0.01s 11520KB
stdin
Standard input is empty
stdout
i: 10000
f2: 50005000
f1: 50005000
i: 1000000
f2: 500000500000