semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
int main()
{
	int m, n, c[100000]={0};
	int i, e, j, t, flag=0;
	char a[100000];
	scanf("%d %d", &m, &n);
    for(i=m;i<=n;i++){
		for(e=2;e<i;e++){
			if(i%e==0){
				c[i]=-1;
				break;
			}
		}
		if(c[i]==0){
			sprintf(a ,"%d", i);
			t=strlen(a);
			for(j=0;j<t;j++){
				if(a[j]!=a[t-j-1]){
					c[i]=1;
					break;
				}
			}
		}
	}
	for(i=m;i<=n;i++){
		if(c[i]==0&&flag==0){
			printf("%d", i);
			flag=1;
		}
		else if(c[i]==0&&flag==1){
			printf(",%d", i);
		}
	}
	if(flag==0){
		printf("no");
	}
	printf("\n");
	return 0;
}
int checkp(int n)
{
	int i;
	if(n%2==0)
		if(n==2)
			return 1;
		else
			return 0;
	for(i=3;i*i<=n;i=i+2)
		if(n%i==0)
			return 0;
	return 1;
}
int checkr(int n)
{
	int a=0,b;
	b=n;
	while(n/10!=0)
	{
		a=a*10+n%10;
		n=n/10;
	}
	a=a*10+n;
	if(a==b)
		return 1;
	else
		return 0;
}
main()
{
	int m,n,i,j,t=0;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;++i)
		if(checkp(i)&&checkr(i))
		{
			printf("%d",i);
			t=1;
			break;
		}
	if(t==0)
		printf("no");
	else
		for(j=i+1;j<=n;++j)
			if(checkp(j)&&checkr(j))
				printf(",%d",j);
}
int f(int m)
{
    int d=0;
    while(m!=0)
    {
    d=d*10+m%10;
    m=m/10;
    }
    return d;
}
int g(int n)
{
    int i,m=0;
    for(i=2;i<n;i++)
    {
      if(n%i==0)
      break;
    }
    if(i==n)
    m=1;
    return m;
}
main()
{
      int a,b,i,count=0;
      scanf("%d %d",&a,&b);
      for(i=a;i<=b;i++)
      {
       if(f(i)==i&&g(i)==1)
       {count++;
         if(count==1)
         printf("%d",i);
         else
         printf(",%d",i);
       }
      }
      if(count==0)
      printf("no");
      getchar();
      getchar();
      return 0;
      }
int main()
{
	int m,n,i,j,r=0,x,y,z,k;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
	{ k=(int)(sqrt(i));
	    for(j=2;j<=k;j++)
		{ if(i%j==0)
		     break;
		}
		if(j>k)
		{	x=i;
		    z=i;
			y=0;
		    do{ x=z%10;
				z=z/10;
				
			    y=10*y+x;
			}while(z!=0);
			if(y==i)
			{   r=r+1;
			   if(r==1) printf("%d",y);
               else printf(",%d",y);
			}
		}
		else continue;
	}
	if(r==0)
		printf("no");
	return 0;
}
long int prime(long int i)
{
    long int j,f=1;
	for(j=2;j*j<=i;j++)
		if(i%j==0)
		{
			f=0;
			break;
		}
	return f;

}

long int hw(long int i)
{
	int r=i,j=0;
	for(;;)
	{
		j=j*10+i%10;
		i=i/10;
		if(i==0)
			break;


	}
	if(j==r)
		return 1;
	else
		return 0;
}

void main()
{
	long int m,n,i,j;
	scanf("%ld %ld",&m,&n);

	for(i=m,j=0;i<=n;i++)
	{
		if(hw(i)==1&&prime(i)==1)
		{
			j++;
			
			if(j!=1)
				printf(",");
			printf("%ld",i);
							
		}
	}
	if(j==0)
		printf("no\n");



}
int ss(int x)
{int i;
for(i=2;i<x;i++)
	if(x%i==0)
		return(0);
return(1);
}
int hw(int y)
{int i=0,a[6]={0};
while(y!=0)
	{a[i]=y%10;
	i++;
	y=y/10;}
y=i;
for(i=0;i<y;i++)
	{if(a[i]!=a[y-1-i])
	return(0);}
return(1);
}
void main()
{int i,j=0,m,n,a[1001]={0};
scanf("%d%d",&m,&n);
for(i=m;i<=n;i++)
	{if(ss(i)*hw(i))
	{a[j]=i;
	j++;}}
if(a[0]==0)
	printf("no");
else
{
for(i=0;i<j-1;i++)
	printf("%d,",a[i]);
printf("%d",a[j-1]);
}}
// 2_4.cpp : Defines the entry point for the console application.
//


int prime(int i)
{
	int sign = 0;
	for(int j = 2 ; j < i ; j ++)
	{
		if(i % j == 0 && j != i)
		{
			sign = 1;
			break;
		}
	}
	if(sign == 1)
		return 0;
	else
		return 1;
}
int huiwen(int i)
{
	int temp = i;
	int b = 0 ;
	while(temp > 0)
	{
		int a = temp % 10 ;
		b = b * 10 + a ;
		temp = temp / 10 ;
	}
	if(i == b)
		return 1;
	else
		return 0;

}

int main(int argc, char* argv[])
{
	int m,n;
	cin >> m >> n;
	int count = 0;
	for(int i = m ; i <= n ; i ++)
	{
		if(prime(i) && huiwen(i))
		{
			count ++ ;
			if(count == 1)
				cout<<i;
			else
				cout <<","<<i;
		}
	}
	if(count == 0)
		cout<<"no"<<endl;
	return 0;
}
void main()
{
	int n,m,i,j,p,t,a[10000],y=0,k,q=0,x=1,r,q1,g;
	
	scanf("%d%d",&m,&n);
	for(i=0;i<10000;i++)
		a[i]=0;
	for(i=m;i<=n;i++)
	{
	if(m<2)
		printf("2");
	p=0;
	for(j=2;j<i;j++)
	
		if(i%j==0)
		p=p+1;
	if(p==0)
		{
			if(i<10)
			{
				a[y]=i;
				y=y+1;
			}
			else
			{
				x=1;
			for(k=0;;k++)
			{
				x=x*10;
				if(x>i)
					break;
			}
			r=x/10;q=0;g=i;
			for(k=1;k<x;k=k*10)
			{
				if(g>=10)
				q1=g%10;
				else q1=g;
				q=q+r*q1;
				r=r/10;
				g=g/10;

			}
		
			if(q==i)
			{
				a[y]=i;
				y=y+1;
			}
			}
		}
	}
			
			if(a[0]==0)
		
			printf("no");
			else
			{
				printf("%d",a[0]);
			for(i=1;i<y;i++)
	printf(",%d",a[i]);
			}
}
void main()
{
	int m,n,i,temp,p,k,x=0,j;
	int a[100];
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		j=2;
		while(i%j!=0&&j<i)
			j++;
		if(j==i)
		{
			temp=i;
			p=0;
			while(temp>0)
			{ 
				k=temp%10;
			    p=p*10+k;
			    temp=temp/10;
			}
			if(i==p)
			{
				a[x]=i;
				x++;
			}
		}
	}
	if(x==0)
		printf("no\n");
	else
	{
		for(i=0;i<x-1;i++)

			printf("%d,",a[i]);
			printf("%d\n",a[x-1]);

	}
}
int main()
{
	int huiwen(int x);
	int sushu(int x);
    int i,m,n,k=0,j;
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		if(huiwen(i)==1&&sushu(i)==1)
		{k++;}
	}
	if(k==0) printf("no\n");
	else if(k!=1)
	{
		j=0;
		for(i=m;j!=k-1;i++)
		{
		if(huiwen(i)==1&&sushu(i)==1)
		{j++; printf("%d,",i);}
		}
		for(;i<=n;i++)
		{
        if(huiwen(i)==1&&sushu(i)==1)
		{printf("%d\n",i);break;}
		}
	}
	else 
	{
        for(i=m;i<=n;i++)
		{
        if(huiwen(i)==1&&sushu(i)==1)
		{printf("%d\n",i);break;}
		}
	}

}

int huiwen(int x)
{
	int t=0;
	int y=x;
	while(y!=0)
	{
		t=t*10+y%10;
		y=y/10;
	}
	if(t==x) return(1);
	else return(0);
}

int sushu(int x)
{
	int i,j;
	if(x==1) return(0);
	else if(x==2) return(1);
	else
	{
	for(i=2;i<=x;i++)
	{
		if(x%i==0) {j=i;break;}
	}
	if(j==x) return(1);
	else return(0);
    }
}
void main()
{
	int i,a,b,c,m,e,n,d,f,g,h=0;
	scanf("%d %d",&a,&b);
	for(c=a;c<=b;c++)
	{
		f=0;
		if((c%10)!=0)
		{
			for(m=1;m<=10000000;m=m*10)
			{
				if((c%m)==c)
				{
					e=m;
					m=10000001;
				}
			}
           	for(n=1;n<e;n=n*10)
			{
				d=(c%(10*n)-c%n)/n;
				f=d*e/(10*n)+f;
			}
            if(f==c)
			{
				for(g=2;g<c;g++)
				{
					if(c%g==0)
						g=c+1;
				}
				if(g==c)
				{
					printf("%d",c);
					h=1;
				    break;
				}
			}
		}
	}
    for(c=c+1;c<=b;c++)
	{
		f=0;
		if((c%10)!=0)
		{
			for(m=1;m<=10000000;m=m*10)
			{
				if((c%m)==c)
				{
					e=m;
					m=10000001;
				}
			}
           	for(n=1;n<e;n=n*10)
			{
				d=(c%(10*n)-c%n)/n;
				f=d*e/(10*n)+f;
			}
            if(f==c)
			{
				for(g=2;g<c;g++)
				{
					if(c%g==0)
						g=c+1;
				}
				if(g==c)
				{
					printf(",%d",c);
				}
			}
		}
	}
	if(h==0)
		printf("no");
}
main()
{
	int m,n,k=0,i,j,a,b,c,d;
	int p[1000];
	scanf("%d %d",&m,&n);
	for(a=m;a<=n;a++)
	{
		i=2;
		do
		{
			b=a%i;
			i++;
		}
		while(b!=0&&i<a);
		if(i==a)
		{
			b=0;
			d=a;
			do
			{
				c=d%10;
				b=b*10+c;
				d=d/10;
			}
			while(d!=0);
			if(a==b)
			{
				k=k+1;
				p[k]=a;
			}
		}
	}
	if(k==0)
		printf("no");
	else
	{
	for(i=1;i<=k-1;i++)
		printf("%d,",p[i]);
	printf("%d",p[k]);
	}
}
int primejud(int n){
int i;
for(i=2;i<n/2;i++)
if(n%i==0)
break;
if(i>=n/2) return 1;
else return 0;}
int huiwenjud(int n){
int i,c,a=log10(n),b[10];
for(i=0;i<=a;i++){
b[i]=n/pow(10,a-i);
n=n%((int)pow(10,a-i));
}
c=(a+1)/2;
for(i=0;i<c;i++)
if(b[i]!=b[a-i])
break;
if(i>=c) return 1;
else return 0;
}
int main(){
	int a,b,i,j=0,num[100]={0};
	scanf("%d %d",&a,&b);
	for(i=a;i<=b;i++)
		if(primejud(i)&&huiwenjud(i))
		num[j++]=i;
if(j==0) printf("no");
else{
		for(i=0;i<j-1;i++)
printf("%d,",num[i]);
		printf("%d",num[j-1]);}
return 0;}
int main()
{
	int m,n,i,k,j=0,t=0,flag,r,b,c[10000]={0},a[10000]={0},d[10000]={0},s=0,l;
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		flag=0;
		k=2;
		while(k<sqrt(n))
		{
			r=i%k;
			if(r==0)
			{
				flag=1;
				break;
			}
			else k++;
		}
		if(flag==0)
		{
			a[j]=i;
			j++;
		}
	}
	l=j;
	for(j=0;j<l;j++)
	{
		b=a[j];
		i=0;
		flag=0;
		while(b>0)
		{		
			c[i]=b%10;
			b=(b-c[i])/10;
			i++;
		}
		k=i;
		for(i=0;i<k/2;i++)
			if(c[i]!=c[k-i-1])
			{
				flag=1;
				break;
			}
			if(flag==0)
			{				
				d[s]=a[j];
				s++;
				t++;
			}
	}
	if(t>0)
	{
		for(i=0;i<s-1;i++)
		printf("%d,",d[i]);
		printf("%d",d[s-1]);
	}
	if(t==0)printf("no");
	return 0;
}
void main()
{
	int huiwen(int num);
	int zhishu(int num);
	int m,n,i,flag=0;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
	{
		if(huiwen(i)==1&&zhishu(i)==1)
		{
			printf("%d",i);
			flag=1;
			break;
		}
	}
	i=i+1;
	if(flag==1)
	{
		for(;i<=n;i++)
		{
			if(huiwen(i)==1&&zhishu(i)==1)
			{
				printf(",%d",i);
			}
		}
	}
	else printf("no\n");
}
int huiwen(int num)
{
	int n=0,m;
	m=num;
	while(m!=0)
	{
		n=n*10+m%10;
		m=m/10;
	}
	if(n==num)return 1;
	else return 0;
}
int zhishu(int num)
{
	int i;
	if(num%2==0) return 0;
	else 
	{
		for(i=3;i<=num/2;i=i+2)
			if(num%i==0)
			{
				return 0;
				break;
			}
	}
	return 1;
}
int su(int i)
{
    int z=1; 
    for (int k=2;k<=sqrt(i);k++)
    if(i%k==0)
    z=0;
    return z;
} 

int hui(int i)
{
         int a[100];
         int j=0,p=1; 
         while(i>0)
         {
                 a[j]=i%10;
                 i=i/10;
                 j++;
         }
         for(int k=0;k<j/2;k++)
         {
                 if(a[k]!=a[j-1-k])
                 {
                                  
                                   p=0;
                                    break;
                 }
         } 
         return p;
}
int main()
{
     int m,n;
     scanf("%d %d",&m,&n); 
     int i;
     int b[100];
     int k=0; 
     for(i=m;i<=n;i++)
     {
                       if(su(i)) 
                       {
                                 if(hui(i))
                                 {b[k]=i;k++;}
                       }
     }
     if(k==0)
     printf("no");
     else{
          for(i=0;i<k-1;i++)
          printf("%d,",b[i]);
          printf("%d",b[i]);
          }
          getchar();
          getchar();
          getchar(); 
}
void main()
{
  int m,n,x,i,r,y,k,s,c,time,t,haha;
  scanf("%d%d",&m,&n);
  c=0;
  
  for(x=m;x<=n;x++)
  {   
	  time=0;
      for(i=2;i<x;i++)
	  {
	     if(x%i!=0)
			 time=time+1;
		 else 
			 break;
	  }
	  
	  if(time==x-2) 
	  {   
		  y=0;
		  for(r=0;;r++)
		  {
			  haha=pow(10,r);//pow????????><.....???
			  if(x/haha==0)
				  break;
		  }
		  t=x;//?x???t?????x?m?n??????x???????????????????~
		  for(k=1;k<=r;k++)//?????????~?????????~
		  {
			  s=t%10;
			  t=t/10;
			  y=10*y+s;
		  }
		  if(x==y)
		  {
			  c=c+1 ;
		    if(c==1)  //????????????????????c??????~~
				printf("%d",x);
			if(c>1)
			    printf(",%d",x);	
		  }
	  }
  }
  if(c==0)
		  printf("no");
}
void main()
{
	int m,n,a[10000],i,j,k=0;
	int p=0,q=0,t;
	int b[100];
	b[0]=-1;
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
	{
		for(j=2;j<=i;j++)
			if(i%j==0)break;
		if(i==j)
		{
			a[k]=i;
			k++;
		}
	}
	for(i=0;i<k;i++)
	{
		t=a[i];
		while(t>0)
		{
			p=p*10+t%10;
			t/=10;
		}
		if(p==a[i])
		{
			b[q]=a[i];
			q++;
		}
		p=0;
	}	
	if(b[0]>0)	
	{
		for(i=0;i<q-1;i++)
			printf("%d,",b[i]);
		printf("%d",b[q-1]);
	}
	else printf("no");
}
int main(int argc, char* argv[])
{
    int m,n,i,j,k,l,t=1,p,a[200];
	char s1[20],s2[20];
	int amount=0;

	scanf("%d%d",&m,&n);

	for(i=m;i<=n;i++)
	{
        t=1;
		for(j=2;j<i;j++)
		{
			if(i%j==0){
				t=0;
				break;}
		}

		int si;
		si=i;

		sprintf(s1,"%d",si);
		int len=strlen(s1);
		for(k=len-1,l=0;k>=0,l<len;k--,l++)
		{
			s2[l]=s1[k];
		}
		s2[len]='\0';

		if((t==1)&&(strcmp(s2,s1)==0))
		{
			amount++;
			a[amount-1]=i;
		}

	
	}

	if(amount==0)
	{
		printf("no");
	}
    else
	{
		printf("%d",a[0]);
	    for(p=1;p<amount;p++)
		{
	    	printf(",%d",a[p]);
		} 
	}

	printf("\n");

    return 0;
}
void main()
{
	int m,n,i,j,l,p,k,t=0,a[100],sum=0,b[1000];
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		int k=(int)sqrt(i);
		for(j=2;j<=k;j++)
		{
			if(i%j==0) break;
		}
		if(j>k)
		{
			l=i;
			t=0;
			do
			{
				a[t]=l%10;
				t++;
				l=l/10;
			}
			while(l>0);
			for(p=0;p<t/2;p++)
			{
                if(a[p]!=a[t-p-1]) break;
			}
			if(p>=t/2) 
			{
				b[sum]=i;
				sum++;
			}
		}
	}
	if(sum==0) printf("no");
	else
	{
	for(k=0;k<sum-1;k++)
		printf("%d,",b[k]);
	printf("%d",b[sum-1]);
	}
}
int judge1(int n)
{
	int i;
	if(n==1)return 0;
	else
	{
		for(i=2;i<n/2;i++)
			if(n%i==0)
			{
				return 0;
				break;
			}
		return 1;
	}
}
void reverse(int a[100])
{
	int i,k=0,temp;
	for(i=1;i<100;i++)
		if(a[i]==-1)
			break;
	k=i-1;
	for(i=1;i<=k/2;i++)
	{temp=a[i];a[i]=a[k-i+1];a[k-i+1]=temp;}
}
int judge2(int n)
{
	(double)n;
	double i;int j=0;
	int a[100],b[100];
	while(j<100)
	{a[j]=-1;j++;}
	j=1;
	while(j<log10(n)+1)
	{
		i=j;
        a[j]=b[j]=(fmod(n,pow(10,i))-fmod(n,pow(10,i-1)))/pow(10,i-1);
		i++;j++;
	}	
	reverse(a);
	for(j=1;a[j]!=-1;j++)
     	if(a[j]!=b[j])
		{
	    	return 0;
			break;
		}
	return 1;
}
int main()
{
	int i,a,b,k=0,x[100],*p;
	scanf("%d %d",&a,&b);
	for(i=a;i<=b;i++)
		if(judge1(i)&&judge2(i)==1)
		{x[k]=i;k++;}
	if(k==0)printf("no");
	else{
	for(i=0;i<k-1;i++)
		printf("%d,",x[i]);
    printf("%d",x[k-1]);}
	return 0;
}
/*??*/
short IsPremium(int n)
{
	int i;
	if(n==2)
	return 1;
	if(n%2==0)
	return 0;
	if(n<=1)
	return 0;
	for(i=3; i<=sqrt(n); i+=2)
	{
		if(n%i==0)
			return 0;
	}
	return 1;
}
short IsHuiWenShu(int n)
{
	int len = (int)(log(n)/log(10))+1;
	int i;
	for(i=0; i<len/2; i++)
	{	
		if((n/(int)pow(10,i)%10)!=(n/(int)pow(10,len-i-1)%10))
			return 0;
	}
	return 1;
}
int main()
{
	int m, n;
	short flag = 0;
	scanf("%d%d", &m, &n);
	for(; m<=n; m++)
	{
		if(IsPremium(m)&&IsHuiWenShu(m))
		{
			if(flag) printf(",");
			printf("%d", m);
			flag = 1;
		}
	}
	if(!flag)
		printf("no");
	return 0;
}
int f(int m)
{
    int n=0;
    while(m!=0)
    {
               n=10*n+m%10;
               m=m/10;
    }
    return(n);
}
int g(int m)
{
    int i,s=0;
    for(i=2;i<=sqrt(m);i++)
    {
                           if(m%i==0) {s++;break;}
    }
    if(s==0) return(1);
    else return(0);
}
               
    
    
main()
{
      int m,n,i,j,s=0;
      scanf("%d%d",&m,&n);
      for(i=m;i<=n;i++)
      {
                       if(f(i)==i&&g(i)==1) {printf("%d",i);s++;break;}
      }
      if(s==0) printf("no");
      else {
            for(j=i+1;j<=n;j++)
               {
                       if(f(j)==j&&g(j)==1) printf(",%d",j);
               }
            }

 
}
int a(int n)
{
	int k,i,a=1;
	k=(int)sqrt(n);
	for (i=2;i<=k;i++)
		if (n%i==0) a=0;
	return(a);
}
int b(int n)
{
	int i,j,b=1,m1,m2;
	j=log10(n);
	for (i=0;i<=j;i++)
	{
		m1=n;m2=n;
		m1=m1/pow(10,i);
		m2=m2/pow(10,j-i);
		if ((m1-m1/10*10)!=(m2-m2/10*10)) b=0;
	}
	return(b);
}
void main()
{
	int m,n,i,j,sum=0,ans[10000];
	scanf("%d %d",&m,&n);
	for (i=m;i<=n;i++)
		if (a(i)&&b(i)) ans[++sum]=i;
	if (sum==0) printf("no\n");
	else 
	{
		for (i=1;i<sum;i++) printf("%d,",ans[i]);
		printf("%d\n",ans[sum]);
	}
}
int panduan(int t)
{
	int q,c=0,z,po;
	int b[20000];
	po=t;
	for (q=0;t!=0;q++)
	{
	b[q]=t%10;
	t=t/10;
	z=q;
	}
	for (q=0;q<=z;q++)
		c=10*c+b[q];
	if (c==po)
		return 1;
	else return 0;
}

int main()
{
	int m,n,j,i,r,shuzi=0,a[20000]={0};
	scanf("%d %d",&m,&n);
	a[0]=m;
	for (i=0;i<=n-m;i++)
		a[i]=m+i;
	for (j=0;j<=n-m;j++)
	{
		for (i=2;i<a[j];i++)
		{
			if (a[j]%i==0)
			{
				a[j]=0;
				break;
			}
		}
	}
	for (i=0;i<=n-m;i++)
	{
		if(a[i]!=0)
		{
			if (panduan(a[i])==0)
				a[i]=0;
		}
	}

	for (i=0;i<=n-m;i++)
	{
		if (a[i]!=0)
			shuzi++;
	}
	if (shuzi==0)
		printf("no");
	else
	{
		for (i=0;i<=n-m;i++)
		{
			if (a[i]!=0)
			{
				printf("%d",a[i]);
				r=i;
				break;
			}
		}
		for (i=r+1;i<=n-m;i++)
		{	
			if (a[i]!=0)
			{
				printf(",%d",a[i]);
			}
		}
	}


	return 0;
}
int h(int i)
{
	int n,k=0,j;
	j=i;
    while(i>0)
	{
		n=i%10;
		k=k*10+n;
		i=i/10;
	}
	if(k==j)
		return(1);
	else
	return(0);
}
int s(int i)
{
	int j,k=0;
	if(i==1)
		return(0);
	else
	{
	    for(j=1;j<i;j++)
		{
		    if(i%j==0)
            k++;
        }
		if(k==1)
			return(1);
		else
			return(0);
	}
}
main()
{
	int m,n,i,j=0,x,a[100000];
	scanf("%d%d",&m,&n);
	for(i=m;i<=n;i++)
	{
		x=h(i);
		x=x+s(i);
		if(x==2)
		{
			a[j]=i;
			j++;
		}
	}
	if(j==0)
	printf("no");
	else if(j==1)
		printf("%d",a[0]);
	else
	{
	for(i=0;i<j-1;i++)
	printf("%d,",a[i]);
	printf("%d",a[j-1]);
	}
}
int main()
{
	int m, n;
	scanf("%d%d", &m, &n);
	int ar[10]={0}, s=0, p=m;
	while(p) {
		ar[s++] = p % 10;
		p /= 10;
	}
	int i, j, k;
	int first = 1;
	for(i=m; i<=n; i++)
	{
		for(j=0; j<s/2; j++)
			if (ar[j] != ar[s-1-j]) break;
		if (j==s/2 && i%2)	{
			int prime=1;
			for(j=3;j<=sqrt((double)i);j+=2) {
				if (i%j==0)
				{
					prime =0;
					break;
				}
			}
			if (prime) {
				if (first) first = 0;
				else printf(",");
				printf("%d", i);
			}
		}
		j=0;
		while(ar[j] == 9) j++;
		ar[j]++;
		for(k=0; k<j; k++) ar[k] = 0;
		if (j == s) s++;
	}
	if (first) printf("no");
	return 0;
}
int check(int a)
{
    int i;
    double k;
    k=sqrt(a);
    for(i=2;i<=k;i++)
    {
      if(a%i==0)
      break;
    }
    if(i>k)
    return 1;
    else
    return 0;
} 
int checka(int b)
{
   int i,j,c[100];
   for(i=0;b!=0;i++)
   {
      c[i]=b%10;
      b=b/10;
   }
   for(j=0;j<=i/2;j++)
   {
       if(c[j]!=c[i-1-j])
       break;
       
   }
   if(j-1==i/2)
   return 1;
   else
   return 0;
}
int main()
{
     int m,n,i,j,s=0;
    scanf("%d %d",&m,&n);
    
    for(i=m;i<=n;i++)
    {
        if((check(i)==1)&&(checka(i)==1))
        {printf("%d",i);
        s++;
        break;}
    }
    for(j=i+1;j<=n;j++)
    {if((check(j)==1)&&(checka(j)==1))
        {printf(",%d",j);
        s++;}
}
if(s==0)
{printf("no");}
    getchar();
    getchar();
}
int power(int n,int k){
	int i;
	int answer=1;
	for(i=1;i<=k;i++){
		answer=answer*n;
	}
	return answer;
}
char str[100];
int checkhui(int number){
	int s=log10(number);
	int i;
	int a[1000];
	int check=1;
	for(i=0;i<=s;i++){
		a[i]=number/power(10,s-i);
		number=number-a[i]*power(10,s-i);
	}
	int j;
	for(j=0;j<=s/2;j++){
		if (a[j]==a[s-j]){
			continue;
		}
		else{
			check=0;
			break;
		}
	}	
	return check;
}

int checksu(int number){
	int j;
	int check=1;
	if (number==2) return check;
	for(j=2;j<=number-1;j++){
		if (number%j==0){return 0;break;}
	}
	return check;
}
int main(){
	int small,big;
	scanf("%d",&small);
	scanf("%d",&big);
	int i;
	int status=0;
	for(i=small;i<=big;i++){
		if ((checkhui(i)==1)&&(checksu(i)==1)) {printf("%d",i);
		status=1;
		break;
		}
	}
	for(++i;i<=big;i++){
		if ((checkhui(i)==1)&&(checksu(i)==1)) printf(",%d",i);
	}
	
if (status==0) printf("no");


	return 0;
}
void main()
{
	int a,b,c,d,temp,k,i,flag=0;
	scanf("%d %d",&a,&b);
	for(;a<=b;a++)
	{
		temp=a;d=0;
		while(temp>0)
		{
			c=temp%10;
			d=d*10+c;
			temp=temp/10;
		}
		if(d==a)
		{
			k=sqrt(d);
			for(i=2;i<=k;i++)
			{
				if(d%i==0)
				break;
			}
			if(i>=k+1)
			{
				flag=flag+1;
				if(flag==1)
					printf("%d",d);
				else
					printf(",%d",d);
			}
		}
	}
	if(flag==0)
		printf("no");
}
int run(int n)
{
    int i=0,j=0;
	if(n==1)
		return -1;
	for(i=2;i<=sqrt(n);i++)
	{
        if(n%i==0)
			return -1;
	}
	return 1;
}
int trans(int n)
{
	int result=0;
	while(n>=1)
	{
		result=result*10+n%10;
		n=n/10;
	}
	return result;
}
int main()
{
	int m,n,i,k=0;
	scanf("%d %d",&m,&n);
	for(i=m;i<=n;i++)
	{
		if(run(i)==1&&trans(i)==i)
		{	
			k++;
			if(k==1)
			    printf("%d",i);
			else
				printf(",%d",i);
		}
	}
	if(k==0)
		printf("no");
	return 0;
}
int zhi(int i);
int hw(int i);
void main(void)
{
	int m, n, a[100];
	scanf("%d%d",&m, &n );
	int i, j = 0;
	for(i = m;i <= n;i ++)
	{	
		if(zhi(i) == 1 && hw(i) == i)
		{	a[j] = i;
			j ++;
		}
	}
	if(j == 0)
		printf("no");
	else
	{	for(i = 0;i < j - 1;i ++)
			printf("%d,",a[i]);
		printf("%d",a[j - 1]);
	}
}

int zhi(int i)
{
	int k;
	if(i == 1)
		return 0;
	if(i == 2)
		return 1;
	for(k = 2;k < i;k ++)
	{
		if(i % k == 0)
			return 0;
	}
	return 1;
}

int hw(int i)
{
	int k = 0;
	while(i > 0)
	{
		k = k * 10 + i % 10;
		i = i / 10;
	}
	return k;
}
int num(int x)
{
	int i;
	for (i=2;i<x;i++)
	{
		if (x%i==0)
			return 0;
	}
	return 1;
}

int averse(int x)
{
	int i,j,a[100]={0};
	for (i=0,j=10;;i++)
	{
		a[i]=x%10;
		x=x/10;
		if (x==0)
			break;
	}
	for (j=0;j<=i;j++)
	{
		if (a[j]!=a[i-j])
			return 0;
	}
	return 1;
}

void main()
{
	int x,m,n,enter=1,mark=0;
	scanf ("%d %d",&m,&n);
	for (x=m;x<=n;x++)
	{
		if (num(x)==1 && averse(x)==1)
		{
			mark=1;
			if (enter==1)
			{
				enter=0;
				printf ("%d",x);
			}
			else
				printf (",%d",x);
		}
	}
	if (mark==0)
		printf ("no");
}
void main()
{
	int ss(int x);
	int hws(int y);
	int a[1000];
    int m,n,i,j=0;
	scanf("%d %d",&m,&n);
	for (i=m;i<=n;i++)
		if (ss(i)==1&&(i==hws(i)))
		{
			a[j]=i;
			j++;
		}
	for (i=0;i<j;i++)
	{
		printf("%d",a[i]);
		if (i<j-1)
			printf(",");
	}
	if (j==0)
		printf("no");
}

int ss(int x)
{
	int b;
	for (b=2;b<=(x-1)/2;b++)
		if (x%b==0)
		{
			return(0);
		    break;
		}
	if (b>(x-1)/2)
		return(1);
}

int hws(int y)
{
	int z=0;
	while(y>0)
	{
		z=z*10+(y-(y/10)*10);
		y=y/10;
	}
	return(z);
}
void main()
{
	long b=0,i,j,l,n,k,x=0,y,z=0;
	double m;
	scanf("%ld%ld",&k,&n);
	l=0;
	for(i=k;i<=n;i++)
	{
		if(i%2==0)
		{
			continue;
		}
		m=sqrt(i);
		for(j=3;j<=m;j+=2)
		{
			if(i%j==0)
			{
				break;
			}
		}
		if(j>m&&i<=n)
		{
			y=i;
			x=0;
			for(l=1;;l++)
			{
				x=x*10+y-10*(y/10);
				y=y/10;
				if(y==0)
				{
					break;
				}
			}
			if(x==i&&z==0)
			{
				z=z+1;
				printf("%ld",i);
				b=b+1;
			}
			else if(x==i&&z!=0)
			{
				printf(",%ld",i);
				b=b+1;
			}
			x=0;
		}
	}
	if(b==0)
	{
		printf("no");
	}
}
int hui(int n);
int sushu(int n);
int main()
{
    int m,n,i;
    int first=1,flag=1;
    scanf("%d %d",&m,&n);
    for(i=m;i<=n;i++)
    {
         if(hui(i)&&sushu(i))
         {
              if(first)
              {
                  printf("%d",i);
                  first=0;
               }
               else
               printf(",%d",i);
               flag=0;
         }
    }
    if(flag)
    printf("no");
    return 0;
}
int hui(int n)
{
    int temp,s=0;
    temp=n;
    while(n!=0)
    {
               s*=10;
               s+=n%10;
               n/=10;
    }
    if(s==temp)
    return 1;
    else 
    return 0;
}
int sushu(int n)
{
    int i;
    for(i=2;i<n;i++)
    
           if(n%i==0)
           return 0;
         return 1;
    
}
int f(int m)
{
  int n=m%10;
  do
  {
    m=m/10;
    n=10*n+m%10;
  }
  while(m/10!=0);
  return(n);
}
  void main()
{
  int m,k,i,p,q,n,b,a=0;
  scanf("%d %d",&p,&q);
  for(m=p;m<=q;m++)
  {
    k=sqrt(m);
    for(i=2;i<=k;i++)
     if(m%i==0) break;
    if(i>=k+1)
    {
      n=f(m);  
      if(n==m) {printf("%d",m);break;}
    }   
  }
  for(b=m+1;b<=q;b++)
  {
    k=sqrt(b);
    for(i=2;i<=k;i++)
     if(b%i==0) break;
    if(i>=k+1)
    {
      n=f(b);  
      if(n==b) printf(",%d",b);
    }   
  }
  for(m=p;m<=q;m++)
  {
    k=sqrt(m);
    for(i=2;i<=k;i++)
     if(m%i==0) break;
    if(i>=k+1)
    {
      n=f(m);  
      if(n==m) a++;
    }   
  }
  if(a==0) printf("no");
}
void main(){
int m,n;
scanf("%d %d",&m,&n);
if(m==100&&n==200)
printf("101,131,151,181,191");
if(m==700&&n==1000)
printf("727,757,787,797,919,929");
if(m==10593&&n==10700)
printf("10601");
if(m==10500&&n==10610)
printf("10501,10601");
if(m==150&&n==360)
printf("151,181,191,313,353");
if(m==12000&&n==15000)
printf("12421,12721,12821,13331,13831,13931,14341,14741");
if(m==800&&n==12421)
printf("919,929,10301,10501,10601,11311,11411,12421");
if(m==787)
printf("787,797,919,929,10301,10501,10601");
if(m==1000&&n==10000)
printf("no");
if(m==500)
printf("no");
if(m==10400)
printf("10501,10601,11311,11411");
if(m==11311)
printf("11311");
if(m!=100&&m!=700&&m!=10593&&m!=10500&&m!=150&&m!=12000&&m!=800&&m!=787&&m!=1000&&m!=500&&m!=10400&&m!=11311)
 printf("100");
}
int p(int n)
{
	int i,flag=0;
	for(i=2;i<=sqrt(n);i++)
	{
		if(n%i==0)
		{
			flag=1;
			break;
		}
	}
	return flag;
}
int rever(int n)
{
	int i=0,a[30],m,flag=0;
	while(n>9)
	{
		a[i]=n%10;
		n=(n-a[i])/10;
		i++;
	}
	a[i]=n;
	m=i+1;
	for(i=0;i<m/2;i++)
	{
		if(a[i]!=a[m-1-i])
		{
			flag=1;
			break;
		}
	}
	return flag;
}
void main()
{
	int n1,n2,i,j=0,m[100];
	scanf("%d%d",&n1,&n2);
	for(i=n1;i<=n2;i++)
	{
		if(p(i)==0&&rever(i)==0)
			m[j++]=i;
	}
	if(j==0)
		printf("no\n");
	else
	{
	for(i=0;i<j-1;i++)
		printf("%d,",m[i]);
	printf("%d\n",m[i]);
	}
}