求助!!!!全部TLE!
  • 板块P1375 小猫
  • 楼主pengguangze
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/7/14 15:40
  • 上次更新2024/7/14 16:52:25
查看原帖
求助!!!!全部TLE!
1126420
pengguangze楼主2024/7/14 15:40
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
const int mod=1e9+7;
long long n,ans,f[N*2];
long long read(){
	long long x=0,f=1;
	char ch=getchar();
	while(ch<'0'||ch<'9'){
		if(ch=='-')f=-1;
		ch=getchar();
	}
	while(ch>='0'&&ch<='9'){
		x=x*10+ch-'0';
		ch=getchar();
	}
	return x*f;
}
long long mini(long long a,long long b,int p){
	long long res=1;
	while(b){
		if(b&1)res=res*a%p;
		b>>=1;
		a=a*a%p;
	}
	return res;
}
long long CC(long long n,long long m,int p){
	if(m==0)return 1;
	return f[n]*mini(f[m]*f[n-m]%p,p-2,p)%p;
}
long long lus(long long n,long long m,int p){
	if(m==0)return 1;
	return (CC(n%p,m%p,p)*lus(n/p,m/p,p))%p;
}
int main(){
	n=read();
	f[0]=1;
	for(int i=1;i<=2*n;i++)f[i]=1ll*f[i-1]*i%mod;
	ans=(lus(2*n,n,mod)-lus(2*n,n+1,mod)+mod)%mod;
	cout<<ans;
	return 0;
}
2024/7/14 15:40
加载中...