#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;
}
}

京公网安备 11010502036488号