多学习。

【试除法】AcWing869.试除法求约数

AcWing869.试除法求约数

题解

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

vector<int> get_divisors(int n)
{
    vector<int> res;
    for(int i = 1; i <= n/i; ++i)
    {
        if(n % i == 0)
         {
             res.push_back(i);
             if(i != n/i) res.push_back(n/i);
         }
    }
    sort(res.begin(), res.end());
    return res;
}

int main()
{
    int n, t;
    cin >> t;
    while(t--)
    {
        cin >> n;
        auto res = get_divisors(n);
        for(auto i: res)
            cout << i << " ";
        cout << endl;
    }
    return 0;
}
posted @ 2022-06-02 19:53  czyaaa  阅读(34)  评论(0)    收藏  举报