求助
查看原帖
求助
492313
ahwhQZY楼主2021/5/29 11:27

RE 90

#include <bits/stdc++.h>
using namespace std;
const int N=6000001;
int prime[N];
bool isprime[N]={true};
int n;
int tot=0;
void Prime(){ 
	for (int i=1;i<=N;i++)
		isprime[i]=true;
	isprime[1]=false;
	for (int i=2;i*i<=N;i++)
		if(isprime[i])
			for (int j=i*i;j<=N;j+=i)
				isprime[j]=false;
}
int sum(int n){
	int x=0;
	while(n!=0){
		x+=n%10;
		n/=10;
	}
	return x;
}
int main(){
	Prime();
	int T;
	int l,r;
	scanf("%d",&T);
	while(T--){
		int ans=0;
		scanf ("%d%d",&l,&r);
		for (int i=l;i<=r;i++)
			if(isprime[i]&&isprime[sum(i)])
				ans++;
		printf("%d\n",ans); 
	}
} 
2021/5/29 11:27
加载中...