fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. long double factorial(unsigned n) {
  5. if (n == 0) return 1;
  6. long double result = n;
  7. while (n --> 1) {
  8. result *= n;
  9. }
  10. return result;
  11. }
  12.  
  13. int main() {
  14. unsigned n;
  15. cin >> n;
  16. while (n >= 0) {
  17. cout << n << "! = " << factorial(n) << endl;
  18. cin >> n;
  19. }
  20. }
Time limit exceeded #stdin #stdout 5s 3300KB
stdin
0
1
2
3
4
5
100
-1
stdout
0! = 1
1! = 1
2! = 2
3! = 6
4! = 24
5! = 120
100! = 9.33262e+157