90分求助,第3个点wa了
查看原帖
90分求助,第3个点wa了
1426940
jmlcyjm楼主2024/11/19 23:43
#include <stdio.h>
#include <math.h>
#define MAX 1024
int N,M;
int judge(int);
int judge(int x)
{
	if(x==1)
	return 0;
	else
	{
		for(int i = 2;i<=sqrt(x);i++)
		{
			if(x%i==0)
			return 0;
		}
		return 1;
	}
}

int main()
{
	int flag = 0,temp,flag2 = 0,n[MAX],KK = 0;
	scanf("%d %d",&N,&M);
	for(int i = N;i<=M;i++)
	{
		flag = judge(i);
		if(flag)
		{
			int t = 0,num[MAX];
			temp = i;
			while(temp>0)
			{
				num[t++] = temp%10;
				temp/=10;
			}
			int k = t;
			for(int j = 0;j<t;j++)
			{
				temp+=num[j]*pow(10,k-1);
				k--;
			}
			flag = judge(temp);
			if(flag)
			{
				flag2 = 1;
				n[KK++] = i;
			}
		}
	}
	if(!flag2)
	printf("NO");
	else
	for(int g = 0;g<KK;g++)
	{
		if(g<KK-1)
		printf("%d,",n[g]);
		else
		printf("%d",n[g]);
	}
	return 0;
}
2024/11/19 23:43
加载中...