fork download
  1. #include <iostream>
  2. #include <cmath>
  3. using namespace std;
  4.  
  5. int main() {
  6. int n,m;
  7. long long f,f1=1,f2=1,p=1000000007;
  8. cin >> n >> m;
  9. if (abs(n-m)>1) cout << "0";
  10. else if (n==m) {
  11. for (int i=1; i<=n; i++) {
  12. f1=f1*i;
  13. if (f1>p) f1=f1%p;
  14. }
  15. for (int j=1; j<=m; j++) {
  16. f2=f2*j;
  17. if (f2>p) f2=f2%p;
  18. }
  19. f=2*f1*f2;
  20. if (f>p) f=f%p;
  21. cout << f;
  22. } else {
  23. for (int i=1; i<=n; i++) {
  24. f1=f1*i;
  25. if (f1>p) f1=f1%p;
  26. }
  27. for (int j=1; j<=m; j++) {
  28. f2=f2*j;
  29. if (f2>p) f2=f2%p;
  30. }
  31. f=f1*f2;
  32. if (f>p) f=f%p;
  33. cout << f;
  34. }
  35. return 0;
  36. }
Success #stdin #stdout 0s 15232KB
stdin
99999 100000
stdout
768947656