题解 | #数列构造#

数列构造

https://www.nowcoder.com/practice/825622cf96a347eb8b208380b6870da2

#include <bits/stdc++.h>

using namespace std;

typedef long long ll;
int main() {
    ll n;
    cin >> n;

    if (n == 1) {
        cout << 1 << endl;
        return 0;
    }

    vector<ll> a;
    for (ll i = 2; i * i <= n; i++) {
        if (n % i == 0) {
            a.push_back(i);
            while (n % i == 0) n /= i;
        }
    }
    if (n != 1) a.push_back(n);
    if (a.size() > 1) cout << 1 << endl;
    else cout << a.front() << endl;
    return 0;
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务