AcWing 869. 试除法求约数

简介: AcWing 869. 试除法求约数
#include <iostream>
#include <algorithm>
#include <vector>
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,a;
  scanf("%d",&n);
  while(n){
    scanf("%d",&a);
    auto res=get_divisors(a);
    for(auto t:res) cout<<t<<" ";
    cout<<endl;
    n--;
  }
  return 0;
}
相关文章
|
6月前
|
人工智能 算法 BI
数学知识:质数与约数
数学知识:质数与约数
70 0
筛质数、分解质因数和快速幂的应用
筛质数、分解质因数和快速幂的应用
61 0
|
6月前
|
人工智能 算法
DAY-1 | 迭乘法、辗转相除法、试除法:最大公约数与最小公倍数问题
这段内容是一个关于计算两个数的最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)的编程题目说明,包括题干、题解和方法总结。其中提到了两种方法:辗转相除法和试除法。辗转相除法通过不断用较大数除以较小数直到余数为零来求最大公约数,然后利用两数乘积除以最大公约数得到最小公倍数。试除法则是通过循环尝试两数的倍数是否同时能被两数整除来求解。在方法总结部分,还介绍了迭乘法求最小公倍数的方法。
76 0
|
6月前
|
人工智能 Java C++
试除法求约数
试除法求约数
48 0
|
存储
每日一题(两数相加)
每日一题(两数相加)
【每周一坑】​正整数分解质因数 +【解答】计算100以内质数之和
关于分解质因数:每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,把一个合数用质因数相乘的形式表示出来,叫做分解质因数。分解质因数只针对合数。
|
算法 C语言 C++
【数论】试除法判断质数,分解质因数,筛质数
将定义进行模拟,若整除了除1与其自身的另外的数,则为质数
128 0