40分#5#6#7#8#9#10RE,求助大佬
查看原帖
40分#5#6#7#8#9#10RE,求助大佬
787512
qusia_MC楼主2024/1/2 18:39

求助大佬,后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;
 } 
2024/1/2 18:39
加载中...