40分求助
查看原帖
40分求助
1404345
zzx20110203楼主2024/8/1 22:28

B3828

前四个AC,后面全WA

#include<bits/stdc++.h>
using namespace std;
bool vis[115]; 
void op(){
	for(int i=2;i<=110;i++){
		if(vis[i]==0){
			for(int j=i+i;j<=110;j+=i){
				vis[j]=1;
			}
		}
	}
	return ;
}
int main(){
	long long l,r,ans=1;
	bool nm=0;
	vis[1]=1;
	op();
	cin>>l>>r;
	int x=sqrt(l),y=sqrt(r);
	for(int i=x;i<=y;i++){
		long long o=i*i;
		if(o<l){
			continue;
		}
		int p=0;
		while(o){
			p+=o%10;
			o/=10;
		}
		if(vis[p]==0){
			ans=((ans%998244353)*(i%998244353)*(i%998244353))%998244353;
			nm=1;
		}
	}
	if(nm==0){
		cout<<'0';
	}
	else{
		cout<<ans;
	}
	return 0;
}
2024/8/1 22:28
加载中...