1581 A. CQXYM Count Permutations(思维)

Posted issue是fw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1581 A. CQXYM Count Permutations(思维)相关的知识,希望对你有一定的参考价值。

LINK

题意

给定 n n n,求 [ 1 , 2 n ] [1,2n] [1,2n]的全排列中,满足

有至少 n n n i i i满足 p i + 1 > p i p_{i+1}>p_i pi+1>pi的排列有多少种??


发现存在 k ( k > = n ) k(k>=n) k(k>=n) i i i满足 p i + 1 > p i p_{i+1}>p_i pi+1>pi

也就是存在 k ( k < n ) k(k<n) k(k<n) i i i不满足 p i + 1 > p i p_{i+1}>p_i pi+1>pi

条件是对称的,答案是所有排列数的一般

也就是 ( 2 n ) ! 2 \\frac{(2n)!}{2} 2(2n)!

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int maxn = 3e5+10;
const int mod = 1e9+7;
int quick(int x,int n)
{
	int ans = 1;
	for( ; n ; n>>=1,x=x*x%mod )
		if( n&1 )	ans = ans*x%mod;
	return ans;
}
int n,fac[maxn];
signed main()
{
	int t; cin >> t;
	fac[0] = 1;
	for(int i=1;i<=200000;i++)	fac[i] = fac[i-1]*i%mod;
	while( t-- )
	{
		cin >> n;
		cout << fac[n*2]*quick( 2,mod-2 )%mod << endl;
	}
}

以上是关于1581 A. CQXYM Count Permutations(思维)的主要内容,如果未能解决你的问题,请参考以下文章

A. CQXYM Count Permutations800 / 数学

bzoj4358: permu

[bzoj4358] permu

bzoj4358: permu

permu(变态考试题集)

BZOJ4358: permu 莫队算法