P1217,88分,5~100000000超时,大佬救我
查看原帖
P1217,88分,5~100000000超时,大佬救我
821734
hilarious189楼主2022/10/21 12:48
#include<stdio.h>
#include<math.h>

int m[100000000];

int zs(int q)
{
	int sum = 0;
	int p = sqrt(q);
	for (int i = 2; i <= p; i++)
	{
		if (q % i == 0)
		{
			return 0;
			break;
		}
		else
		{
			sum++;
		}
	}
	if (sum == p - 1)
	{
		return 1;
	}
}

int pd(int t)
{
	int i = 0;
	int sum = 0;
	while(t!=0)
	{
		m[i] = t % 10;
		t = t / 10;
		i++;
	}
	for (int j = 0; j < i / 2; j++)
	{
		if (m[j] != m[i - 1 - j])
		{
			return 0;
			break;
		}
		else
		{
			sum++;
		}
	}
	if (sum == i / 2)
	{
		return 1;
	}
}

int main()
{
	int a;
	int b;
	scanf("%d%d", &a, &b);
	while (a < b+1)
	{
			if (pd(a) == 0 || zs(a)==0)
			{
				a++;
			}
			else if(pd(a)==1&&zs(a)==1)
			{
				printf("%d\n", a);
				a++;
			}
	}
	return 0;
}
2022/10/21 12:48
加载中...