#include<bits/stdc++.h> using namespace std; bool a[110000000]; int main() { int ans=0,n; cin>>n; memset(a,true,sizeof(a)); for(int i=2;i<=n;i++) if(a[i]) { ans++; for(int j=i*2;j<=n;j+=i) a[j]=false; } cout<<ans; return 0; }
为什么最后一个点TLE???