样例没过 求调!解答AC必关
查看原帖
样例没过 求调!解答AC必关
1086453
__CJY__楼主2024/11/2 07:33
#include<bits/stdc++.h>
using namespace std;
const int maxn=1e6+5;
bitset<maxn>vis;
int p[maxn/10],s[maxn],k,x; 
int main(){
	for(int i=5;i<maxn;i+=4){
		if(!vis[i]) p[++k]=i;
		for(int j=i*2;j<maxn;j+=i) vis[j]=1;
	}
	for(int i=1;i<=k;i++){
		for(int j=1;j<=k&&p[i]*p[j]<maxn;j++) vis[p[i]*p[j]]=1;
	}
	for(int i=1;i<maxn;i++) s[i]=s[i-1]+vis[i];
	cin>>x;
	while(x) cout<<x<<' '<<s[x]<<'\n',cin>>x;
}

哪儿错了?

回复请@。

2024/11/2 07:33
加载中...