POJ3306 素数筛法
2013-01-07 22:04
155 查看
这题很明显得用素数筛法打出一个素数表 模拟一下求出第n个素数就可以了
水题啊。。。。
#include <iostream>
#include<cstdio>
#include<cstring>
using namespace std;
#define max 1000005
bool isprime[max];
void getprime()
{
long long i,j;
memset(isprime,1,sizeof(isprime));
isprime[1]=0;
isprime[0]=0;
for(i=2; i<max; i++)
if(isprime[i])
for(j=i*i; j<max; j+=i)
isprime[j]=0;
}
int main()
{
getprime();
int a,d,n;
while(~scanf("%d%d%d",&a,&d,&n)&&(a+d+n))
{
int i,sum=0;
for(i=a; sum<n; i+=d)
if(isprime[i])
{
sum++;
if(sum==n)
break;
}
printf("%d\n",i);
}
return 0;
}
水题啊。。。。
#include <iostream>
#include<cstdio>
#include<cstring>
using namespace std;
#define max 1000005
bool isprime[max];
void getprime()
{
long long i,j;
memset(isprime,1,sizeof(isprime));
isprime[1]=0;
isprime[0]=0;
for(i=2; i<max; i++)
if(isprime[i])
for(j=i*i; j<max; j+=i)
isprime[j]=0;
}
int main()
{
getprime();
int a,d,n;
while(~scanf("%d%d%d",&a,&d,&n)&&(a+d+n))
{
int i,sum=0;
for(i=a; sum<n; i+=d)
if(isprime[i])
{
sum++;
if(sum==n)
break;
}
printf("%d\n",i);
}
return 0;
}
相关文章推荐
- 素数筛法系列之2 分段筛法思想
- hdu1431 2138 素数筛法的应用
- 素数筛法
- 素数判定 & 素数筛法 & poj_3292_Semi-prime H-numbers
- 数论专题小结:素数筛法
- POJ_3421_X-factor Chains(素数筛法)
- 线性素数筛法模板
- hdoj 1431 素数回文【素数筛法+回文数判断打表】
- 数论知识点2——素数筛法-HDOJ 2136
- 素数筛法
- luogu 1865 数论 线性素数筛法
- 素数筛法
- nefu 582 素数判定(素数筛法和基本法双排)
- POJ 2689 Prime Distance【素数筛法】
- 素数筛法(素筛)
- 【区间范围素数筛法】POJ - 2689 Prime Distance
- C语言:素数筛法与分解素因数
- 素数筛法打表模板
- 素数筛法系列之3 减少筛次数
- 素数筛法