C语言线性筛80分最后两个点MLE了,求救
查看原帖
C语言线性筛80分最后两个点MLE了,求救
620692
DongpoSushi楼主2022/5/3 11:23
#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>
#define N 10000000
int primes[N];
bool st[N]={1,1};
int cnt;
int i,j,n;
void get_primes( int n)
{
for(int i=2; i<=n; i++)
{
	if(!st[i]) primes[cnt++] = i;  
	for( j=0; i*primes[j] <= n; j++)  
	{
	st[primes[j] * i] = 1;
	if(i % primes[j] == 0) break;  
	}
}
}
int main()
{
	scanf("%d",&n);
	get_primes(n);
	printf("%d",cnt);
}
2022/5/3 11:23
加载中...