Advertisement
a53

elimin_prime

a53
Sep 27th, 2017
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.72 KB | None | 0 0
  1. #include <fstream>
  2. #include <cstring>
  3. #define nmax 100000
  4. using namespace std;
  5. int v[nmax + 5],av[nmax + 5];
  6. bool c[nmax + 5];
  7. int main(int argc,const char * argv[])
  8. {
  9. ifstream f("elimin_prime.in");
  10. ofstream g("elimin_prime.out");
  11. int n,i,na=0;
  12. f>>n;
  13. for(i=1;i<=n;++i)
  14. f>>v[i];
  15. for(i=2;i*i<=nmax;++i)
  16. if(!c[i])
  17. for(int j=i*i;j<=nmax;j+=i)
  18. c[j]=1;
  19. while(n)
  20. {
  21. memset(av,0,sizeof(av));
  22. na=0;
  23. for(i=1;i<=n;++i)
  24. {
  25. if(!c[i])
  26. g<<v[i]<<' ';
  27. else
  28. av[++na]=v[i];
  29. }
  30. memcpy(v,av,sizeof(av));
  31. n=na;
  32. }
  33. g<<'\n';
  34. return 0;
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement