Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- ifstream fin("hard_prime.in");
- ofstream fout("hard_prime.out");
- bool isPrime(int nr)
- {
- if (nr <= 1)
- return false;
- if (nr <= 3)
- return true;
- if (nr % 2 == 0 || nr % 3 == 0)
- return false;
- for (int i = 5; i * i <= nr; i = i + 6)
- if (nr % i == 0 || nr % (i + 2) == 0)
- return false;
- return true;
- }
- int main()
- {
- int n, nr;
- fin>>n;
- vector <int>a;
- vector<int>::iterator ip;
- for(int i=0; i<=n; i++)
- {
- fin>>nr;
- if(nr==2)
- a.push_back(nr);
- else if(nr%2)
- if(isPrime(nr))
- a.push_back(nr);
- }
- sort(a.begin(), a.end());
- ip = unique(a.begin(), a.begin() + a.size());
- a.resize(distance(a.begin(), ip));
- for(ip = a.begin(); ip != a.end(); ++ip)
- fout << *ip << " ";
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement