A - CQXYM Count Permutations
题意:
给定一个2n的数组,给出一个置换操作,置换是由n个从1到n的不同整数按任意顺序组成的数组,求满足pi<pi+1的i的数目不小于n的置换数。
思路:
我们要求得是满足n个置换数得答案,我们可以发现满足条件置换数的数量和不满足条件置换数的数量是对等的,所以我们将数组全排列后除2就可以了。
#include<iostream>
#include<cstdio>
using namespace std;
const int mod=1000000007;
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n;
long long ans=1;
scanf("%d",&n);
for(long long i=3;i<=2*n;i++)
{
ans=ans*i%mod;
}
printf("%lld\n",ans);
}
return 0;
}