Pagini recente » Cod sursa (job #645499) | Cod sursa (job #640357) | Cod sursa (job #276556) | Cod sursa (job #1959345) | Cod sursa (job #728368)
Cod sursa(job #728368)
/* http://infoarena.ro/problema/ciur */
#include <fstream>
#include <cstring>
using std::ifstream;
using std::ofstream;
int main() {
ifstream in("ciur.in");
ofstream out("ciur.out");
unsigned n, i, j, k = 0;
unsigned char *ciur;
in >> n;
ciur = new unsigned char[n + 1];
std::memset(ciur, 1, (n + 1) * sizeof(unsigned char));
for(i = 2; i <= n; ++i) {
if(ciur[i]) {
++k;
for(j = i + i; j <= n; j += i)
ciur[j] = 0;
}
}
out << k;
in.close();
out.close();
return 0;
}