[数学] aw3783. 第 k 个除数(求约数+CF762A)
Posted Ypuyu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[数学] aw3783. 第 k 个除数(求约数+CF762A)相关的知识,希望对你有一定的参考价值。
1. 题目来源
2. 题目解析
求所有约数,排序,输出即可。
时间复杂度: O ( n l o g n ) O(\\sqrt n log\\sqrt n) O(nlogn)
空间复杂度: O ( n ) O(\\sqrt n) O(n)
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
int main() {
LL n, k;
cin >> n >> k;
vector<LL> q;
for (LL i = 1; i <= n / i; i ++ ) {
if (n % i == 0) {
q.push_back(i);
if (n / i != i) q.push_back(n / i);
}
}
sort(q.begin(), q.end());
if (k > q.size()) cout << -1 << endl;
else cout << q[k - 1] << endl;
return 0;
}
以上是关于[数学] aw3783. 第 k 个除数(求约数+CF762A)的主要内容,如果未能解决你的问题,请参考以下文章