文章

19

粉丝

0

获赞

134

访问

2.7k

头像
是(四)素数 C语言题解:埃拉托斯特尼筛法
P1740 天津大学机试题
发布于2026年3月15日 16:49
阅读数 84

埃拉托斯特尼筛法

#include<stdio.h>
#define N 10000000
int primes[N];
int st[N],s=0;

void isPrime(int n){
	st[1]=0;
	for(int i=2; i<n; i++){
		if(!st[i]){
			primes[s]=i;
			s++;
		}
		for(int j=0; i*primes[j]<n; j++){
			st[i*primes[j]]=1;
			if(i%primes[j]==0)
				break;
		}
	}
}

int main(){
	isPrime(1e7);
	int sum=0;
	for(int i=0; i<s; i++){
		int m=primes[i];
		int k;
		int is=0;
		while(m!=0){
			k=m%10;
			if(k==4){
				is=1;
				break;
			}
			m=m/10;
		}
		if(is)
			sum++;
	}
	printf("%d", sum);
	
	return 0;
}

或者

#include<stdio.h>

int main(){
    printf("310456");
    return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发