A 题 0pts。
不知道代码哪里出了问题。
#include<bits/stdc++.h>
using namespace std;
#define mod 998244353
long long fxy[114514],fab[114514];
signed main(){
int t;
cin>>t;
while(t--){
long long n,a,b,x,y;
cin>>n>>a>>b>>x>>y;
fxy[1]=x,fxy[2]=y,fab[1]=a,fab[2]=b;
if(n==1){cout<<(x-a+mod)%mod<<endl;continue;}
if(n==2){cout<<((x-a)*(y-b)+mod)%mod<<endl;continue;}
long long ans=(x-a)*(y-b);
ans=(ans+mod)%mod;
for(long long i=3;i<=n;i++){
long double tmp=sqrtl(fxy[i-2]*fxy[i-1]);
fxy[i]=((long long)(tmp)+1+mod)%mod;
tmp=sqrtl(fab[i-2]*fab[i-1]);
fab[i]=((long long)(tmp)+1+mod)%mod;
ans*=(fxy[i]-fab[i]);
ans+=(ans/(-mod))*mod;
ans=(ans+mod)%mod;
if(ans<0) cout<<"WTF\n";
}
cout<<(ans+mod)%mod<<endl;
}
}