服了
查看原帖
服了
373662
KobeBeanBryant楼主2021/4/3 09:47
#include<bits/stdc++.h>
using namespace std;
int n,ans;
bool p[100000000];
int main() {
	cin>>n;
	int i,j;
	p[0]=p[1]=false;
	for(int i=2; i<=n; i++) p[i]=true;
	for(int i=2; i*i<=n; i++) {
		if(p[i]) {
			for(int j=i*i; j<=n; j+=i) {
				p[j]=false;
			}
		}
	}
	for(int u=0;u<n;u++){
		if(p[u]) ans++;
	}
	cout<<ans;
}
#include<bits/stdc++.h>
using namespace std;
int n,ans;
bool p[100000000];
int main() {
	cin>>n;
	int i,j;
	p[0]=p[1]=false;
	for(int i=2; i<=n; i++) p[i]=true;
	for(int i=2; i*i<=n; i++) {
		if(p[i]) {
			for(int j=i*i; j<=n; j+=i) {
				p[j]=false;
			}
		}
	}
	for(int u=0;u<=n;u++){
		if(p[u]) ans++;
	}
	cout<<ans;
}

我就想问这两个代码有什么区别(第一个#8WA,#10TLE,第二个AC)

2021/4/3 09:47
加载中...