#include <iostream> using namespace std; /* 偶数:n/2; 奇数:n-n/2 奇数排列*偶数排列个数 如果是奇数=偶数,则先排奇数或先排偶数都可以(后面*2); 而如果奇数=偶数+1,则只能先排奇数,两奇数中间插偶数。 */ int main() { long long a = 0, b = 0, count = 1; long long n; while (cin >> n) { b = n / 2; a = n - b; if (n == 2) { cout << 2; return 0; } for (int i = a; i > 0; i--) { count *= i; count %= (1000000000 + 7); } for (int j = b; j > 0; j--) { count *= j; count %= (1000000000 + 7); } if(n%2==0)count=count*2%(1000000000 + 7); cout << count; } }