数论(二)
一 .试除法求约数
#include<bits/stdc++.h>
using namespace std;
vector<int> get_res(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); //注意n=i*i的情况
}
}
sort(res.begin(),res.end());
return res;
}
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n;
scanf("%d",&n);
auto res=get_res(n);
for(auto x:res)
{
printf("%d ",x);
}
printf("\n");
}
}
吉林师范大学2018级本科生赵起越