记录编号 366487 评测结果 AAAAAAAAA
题目名称 [USACO 1.5] 回文质数 最终得分 100
用户昵称 Gravatar波大比 是否通过 通过
代码语言 C++ 运行时间 0.061 s
提交时间 2017-01-24 12:04:57 内存使用 0.70 MiB
显示代码纯文本
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cstring>
#include <string>
#include <cmath>

using namespace std;

const int nmax=100086;

int upperbound,lowerbound;

int ans[nmax]={0};

void PreDo()
{
	scanf("%d%d",&lowerbound,&upperbound);
}


bool Judge(int x)
{
	bool tag=1;
	for(int i=2;i<=sqrt(x);i++)
	{
		if(x%i==0)
		{
			tag=0;
			break;
		}
	}
	return tag;
}


void Col()
{
	ans[1]=2;
	ans[2]=3;
	ans[3]=5;
	ans[4]=7;
	ans[5]=11;
	int cnt=6;
	int tmp=0;
	for(int i=1;i<=9;i++)
	{
		for(int j=0;j<=9;j++)
		{
			tmp=i*100+j*10+i;
			if(Judge(tmp))
			{
				cnt++;
				ans[cnt]=tmp;
			}
		}
	}//3
	for(int i=1;i<=9;i++)
	{
		for(int j=0;j<=9;j++)
		{
			tmp=i*1000+j*100+j*10+i;
			if(Judge(tmp))
			{
				cnt++;
				ans[cnt]=tmp;
			}
		}
	}//4
	for(int i=1;i<=9;i++)
	{
		for(int j=0;j<=9;j++)
		{
			for(int k=0;k<=9;k++)
			{
				tmp=i*10000+j*1000+k*100+j*10+i;
				if(Judge(tmp))
				{
					cnt++;
					ans[cnt]=tmp;
				}
			}
		}
	}//5
	/*
	for(int i=1;i<=9;i++)
	{
		for(int j=0;j<=9;j++)
		{
			for(int k=0;j<=9;k++)
			{
				tmp=i*100000+j*10000+k*1000+k*100+j*10+i;
				if(Judge(tmp))
				{
					cnt++;
					ans[cnt]=tmp;
				}
			}
		}
	}//6
	*/
	for(int i=1;i<=9;i++)
	{
		for(int j=0;j<=9;j++)
		{
			for(int k=0;k<=9;k++)
			{
				for(int l=0;l<=9;l++)
				{
					tmp=i*1000000+j*100000+k*10000+l*1000+k*100+j*10+i;
					if(Judge(tmp))
					{
						cnt++;
						ans[cnt]=tmp;
					}
				}
			}
		}
	}//7
	for(int i=1;i<=9;i++)
	{
		for(int j=0;j<=9;j++)
		{
			for(int k=0;k<=9;k++)
			{
				for(int l=0;l<=9;l++)
				{
					tmp=i*10000000+j*1000000+k*100000+l*10000+l*1000+k*100+j*10+i;
					if(Judge(tmp))
					{
						cnt++;
						ans[cnt]=tmp;
					}
				}
			}
		}
	}//8
//	printf("%d\n",cnt);
}


void Out()
{
	for(int i=1;i<=10000;i++)
	{
		if(lowerbound<=ans[i]&&ans[i]<=upperbound)
		{
			printf("%d\n",ans[i]);
		}
	}
}

int main()
{
	freopen("pprime.in","r",stdin);
	freopen("pprime.out","w",stdout);
	PreDo();
	Col();
	Out();
	return 0;
}