Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
54916 seanlsy 列队 C++ 输出超限 90 1029 MS 78384 KB 867 2022-08-08 11:29:52

Tests(9/10):


#include <bits/stdc++.h> using namespace std; #define mod 998244353 #define maxn 10000001 inline int read(){ int x=0;bool f=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-') f=0;ch=getchar();} while(ch>='0'&&ch<='9') x=(x<<3)+(x<<1)+(ch^48),ch=getchar(); return f?x:-x; } inline int Pow(int x,int y){ int res=1; while(y){ if(y&1) res=1ll*res*x%mod; x=1ll*x*x%mod; y>>=1; } return res; } int fac[10000005]={1},inv[10000005]={1},t,n,m; int main(){ // freopen("line.in","r",stdin); // freopen("line.out","w",stdout); for(int i=1;i<=maxn;i++) fac[i]=1ll*fac[i-1]*i%mod; inv[maxn]=Pow(fac[maxn],mod-2); for(int i=maxn-1;i;i--) inv[i]=1ll*inv[i+1]*(i+1)%mod; t=read(); while(t--){ m=read(),n=read(); if(n<m-1) puts("0"); else printf("%d\n",1ll*fac[n]%mod*fac[n+1]%mod*inv[n-m+1]%mod); } return 0; }


测评信息: