求助大佬,后6个测试点RE
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long n1,n2,ans=1;
cin>>n1>>n2;
bool a[n2+10],b[n2+10];
memset(a,1,sizeof(a));
int c[n2+10];
a[0]=a[1]=0;
for(int i=2;i<=n2;i++)
{
for(int j=2;i*j<=n2;j++)
{
a[i*j]=0;
}
}
for(int i=1;i<=9&&i<=n2;i++)c[i]=i;
for(int i=10;i<=n2;i++)
{
c[i]=c[i/10]+i%10;
}
int m;
for(int i=ceil(sqrt(n1));i*i<=n2;i++)
{
if(a[c[i*i]])
{
ans*=i%998244353*i%998244353;
ans%=998244353;
}
}
cout<<(ans==1?0:ans%998244353);
return 0;
}