#define MAX 200 void print_prime(int m) { assert(m <= MAX); bitset<MAX> flag; flag.reset(); flag.set(0); flag.set(1); for (int i = 4; i <= m; i += 2) flag.set(i); for (int k = 3; k*k <= m; ++k) if (flag[k] == 0) for (int j = 3*k; j <= m; j += 2*k) flag.set(j); for (int i = 2; i <= m; ++i) if (flag[i] == 0) printf("%d\n", i); }