论测评机的特性
2025-05-28 19:37:25
发布于:广东
观前提醒
本贴是一个备赛GESP5级崩溃的人写的,所以会很混乱
正文
1
https://www.luogu.com.cn/problem/B3969
一段代码
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N = 2e6 + 10;
int vis[N];
int n;
int f(int n){
for(int i = 2;i <= n;i++){
if(vis[i] == 0){
vis[i] = i;
for(int j = i * 2;j <= n;j += i){
if(!vis[j])vis[j] = i;
}
}
}
}
vector<int> f2(int x){
vector<int> vt;
while(x > 1){
int mi = vis[x];
vt.push_back(mi);
while(x % mi == 0)x /= mi;
}
return vt;
}
int b;
signed main(){
cin >> n >> b;
f(n);
int cnt = 1;
for(int i = 2;i <= n;i++){
auto vt = f2(i);
if(vt.back() <= b)cnt++;
}
cout << cnt;
return 0;
}
本地:
输入10 3
输出7
很正常对吧
上评测机!(实际上是ACGO在线IDE,但是在洛谷结果相同)
输入 10 3
运行错误
把int f1()
改为void f1()
成功运行,结果正确
?
全部评论 2
O2优化强制函数有返回值
2025-05-28 来自 广东
0谢谢
2025-05-31 来自 广东
0
开O2优化是这样的
2025-05-28 来自 广东
0
有帮助,赞一个