一.题目
给出n(1<=n<=100000),问1到n之间有几个素数。
输入格式
第1行,1个整数T(T<=100000),表示共有T组测试数据
第2—第T+1行,每行1个整数,表示测试数据n
输出格式
对于每个测试数据,输出1行,每行1个数,表示1到n之间的素数个数
输入样例
5
1
2
100
1000
5000
输出样例
0
1
25
168
669
二.思路
仍然是大表思路,虽然还是”超时“…
三.代码
#include <stdio.h>
#include<string.h>
int target[100000];
int temp[100000];
int main ()
{
int n;
scanf("%d",&n);
temp[1]=1;

该博客介绍了如何解决在1到n范围内素数个数的问题,针对100000以内的n,提出了利用大表策略来计算。尽管这种方法可能导致超时,但给出了具体的实现代码。
最低0.47元/天 解锁文章
4341

被折叠的 条评论
为什么被折叠?



