这玩意为啥 70 分
查看原帖
这玩意为啥 70 分
664452
luogu_robot楼主2022/3/20 08:53

rt,求dl证明一下正确性

#include <bits/stdc++.h>
using namespace std;

#define int long long
int ans = 1;
int l, r;
int sum;

int get(int x) {
    if (x <= 3) return 1;
    for (int i = 2; i * i <= x; i++) 
        if (x % i == 0) return x / i;
    return 1;
}


signed main() {
    cin >> l >> r;
    int i = 1;
    for (; i * i <= r; i++);
    if ((i - 1) * (i - 1) == r) l = (i - 2) * (i - 2);
    else l = (i - 1) * (i - 1);
    for (int i = l; i <= r; i++) {
        int next = get(i);
        ans = max(next, ans);
    }
    cout << ans << endl;
    return 0;
}
2022/3/20 08:53
加载中...