```cpp
void o_sieve(int n){
flag[1] = 0;
for(int i = 2 ; i <= m ; i++){
if(flag[i]) su[++cnt] = i;
for(int j = 1 ; j <= cnt && i * su[j] <= m ; j++) {
flag[i * su[j]] = 0;
if(i % su[j] == 0) break;
}
}
}
```
右端点最大值是m
by _______qwq_______ @ 2023-08-02 10:00:58
@[USSR_](/user/813524) 大佬还是有问题
by 2011Andy @ 2023-08-02 10:01:33
萌新自己改了一下A了
此贴结
by 2011Andy @ 2023-08-02 10:02:39