为什么筛的时候退出条件不能这样写
查看原帖
为什么筛的时候退出条件不能这样写
1077657
Devpp楼主2024/7/2 01:37
int n, q;   cin >> n >> q;
vector<int> pri;
bool is_pri[n+1];
memset(is_pri, 1, sizeof(is_pri));
for(int i=2; i<=n; i++){
  if(is_pri[i])   pri.push_back(i);
  for(int &x: pri){
    if(x*i > n || i%x == 0) break;
      is_pri[x*i] = false;
    }
}

在is_pri[x*i]=false之前判断退出为什么不可以能给个公式证明一下吗

2024/7/2 01:37
加载中...