60pts求助!
查看原帖
60pts求助!
1144339
forever_Neuer楼主2024/9/4 21:23

红题折磨我半天,服了!

#include "bits/stdc++.h"
using namespace std;
#define int __int128
void read(__int128 &x)
{
    int f=1;
    x=0;
    char s=getchar();
    while(s<'0'||s>'9')
    {
        if (s=='-') f=-1;
        s=getchar();
    }
    while(s>='0'&&s<='9')
    {
        x=x*10+s-'0';
        s=getchar();
    }
    x*=f;
}
void write(__int128 x)
{
    if(x<0)
    {
        putchar('-');
        x=-x;
    }
    if(x>9) write(x/10);
    putchar(x%10+'0');
}
signed main(void){
	int T;
	read(T);
	while(T--){
		int n; 
		read(n);
		int ans=1,tmp;
		for(int i=1;i<=n;i++) ans*=i;
		tmp=ans,ans=1;
		for(int i=n;i>0;i-=2) ans*=i;
		__int128 sum=2*(tmp/ans);
		write(sum);putchar('\n');
	}
}
2024/9/4 21:23
加载中...