找区间内的可逆素数个数

2024-01-02 14:17:36

?1.答案

#include<stdio.h>
#include<string.h>
#include<math.h>
int is_prime(int n);
int nixu(int n);

int main()
{
	int t=0,m, n, i;
	scanf("%d %d", &m, &n);
	for (i = m; i < n; i++)
	{
		if (is_prime(nixu(i)) == 1 && is_prime(i))
		{
			t++;
		}
     }
	printf("%d", t);
	return 0;
}
int is_prime(int n)    //判断是否为素数
{
	int found = 1;
	if (n <= 1)
	{
		return 0;
	}
	for (int i = 2; i < n; i++)
	{
		if (n % i == 0)
		{
			return 0;
		}
	}
	return found;
}
int nixu(int n)   //将数字逆序
{
	
	int m=0;
	while (n != 0)
	{
		m = n % 10 + m * 10;
		n /= 10;
	}
	
	return m;
}

2.注意事项

这里最好写return 0;

如果写found=0的话容易超时

文章来源:https://blog.csdn.net/CTJ_c/article/details/135337958
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。