现在的位置: 首页 > 综合 > 正文

HDU-2136(prime_创新)

2013年08月07日 ⁄ 综合 ⁄ 共 403字 ⁄ 字号 评论关闭

这道题目开始的时候也是没有看明白到底是个什么意思,,,

看了别人的代码才知道原来是个这么意思,

还是不懂是个什么意思其实,,看代码算了..

嘿嘿

贴出:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#define MAXN 1000001

int prime[MAXN];

int main()
{
	memset(prime,-1,sizeof(prime));
	int num=0;
	for(int i=2;i<MAXN;i++)
	{
		if(prime[i]==-1)
		{
			num++;
			for(int j=i;j<MAXN;j+=i)
			{	
				prime[j]=num;
			}
		}
	}
	int N;
	while(scanf("%d",&N)!=EOF)
	{
		if(N==1)
			printf("0\n");
		else
			printf("%d\n",prime[N]);
	}
	return 0;
}

 

抱歉!评论已关闭.