求助(玄关)
  • 板块题目总版
  • 楼主Danny_chan
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/10/22 21:24
  • 上次更新2024/10/22 22:50:35
查看原帖
求助(玄关)
1032960
Danny_chan楼主2024/10/22 21:24

题目在这里

代码:

#include<bits/stdc++.h>
#define int long long
using namespace std;
const int mod=998244353;
int a[10000010],cnt;
bool check(int x){
	if(x<2) return false;
	for(int i=2;i*i<=x;i++){
		if(x%i==0){
			return false;
		}
	}
	return true;
}
signed main(){
	int l,r;
	cin>>l>>r;
	for(int i=1;i*i<=1e12;i++){
		int x=i*i;
		int sum=0;
		while(x>0){
			sum+=x%10;
			x/=10;
		}
		if(check(sum)){
			a[++cnt]=i*i;
		}
	}
	int ans=1;
	for(int i=1;i<=cnt;i++){
		if(a[i]>=l&&a[i]<=r){
			ans=(ans*a[i])%mod;
		}
	}
	if(ans==1){
		cout<<0<<endl;
	}
	else cout<<ans<<endl;
	return 0;
}
2024/10/22 21:24
加载中...