7-2 可逆素数 (9 分)
朴素写法,正着倒着判断一遍目标数是否是素数,比如对于53,它是一个素数,但是倒过来之后35就是合数。要得到一个数的逆序数,就是把原数的最高位变成新数的最低位,以此类推。
import java.util.Scanner;
public class Main {
public static void main(String[] args)
{
Scanner cin=new Scanner(System.in);
int m=cin.nextInt();
int n=cin.nextInt();
int q[]=new int[100];
int cnt=0;
for(int i=m;i<=n;i++)
{
int flag=1;
for(int x=2;x<i/x;x++)
if(i%x==0)flag=0;
if(flag!=0)
{
int x=i;
int sum=0;
while(x!=0)
{
sum=sum*10+x%10;//当时习惯写成+=了,一直没发现
x/=10;
}
for(int y=2;y<sum/y;y++)
if(sum%y==0)flag=0;
}
if(flag!=0)q[cnt++]=i;
}
if(cnt!=0)
{
System.out.print('[');
for(int i=0;i<cnt;i++)
{
if(i==0) System.out.print(q[i]);
else System.out.print(","+q