算法笔记.求约数

代码实现:

cpp 复制代码
#include<iostream>
using namespace std;
#include<vector>
void check(int x)
{
    vector<int> v;
    for(int i = 1;i<= x/i;i++)
    {
        if(x%i == 0) 
        {
            cout << i<<" ";
            v.push_back(i);
        }
    }
    
    for(int i = v.size()-1;i>=0;i--)
    {
        if(x/v[i] == v[i]) continue;
        cout << x/v[i]<<" ";
    }
    cout <<endl;
}


int main()
{
    int n;
    cin>>n;
    
    while(n--)
    {
        int x;
        scanf("%d",&x);
        check(x);
    }
    return 0;
}

注意:约数只需要枚举到 ,对应的大于约数直接算出来,相同约数只取一个

相关推荐
金色熊族2 分钟前
MV结构下设置Qt表格的代理(2)
c++·qt
寻星探路5 分钟前
【算法专题】哈希表:从“两数之和”到“最长连续序列”的深度解析
java·数据结构·人工智能·python·算法·ai·散列表
@zulnger8 分钟前
python 学习笔记(闭包)
笔记·python·学习
!停22 分钟前
C语言单链表
c语言·数据结构·算法
Morwit25 分钟前
Qt qml创建c++类的单例对象
开发语言·c++·qt
June`25 分钟前
IO模型全解析:从阻塞到异步(高并发的reactor模型)
linux·服务器·网络·c++
AomanHao31 分钟前
【阅读笔记】Bayer阵列坏点校正-《Adaptive pixel defect correction》
图像处理·笔记·isp·坏点补偿
YxVoyager31 分钟前
Qt C++ :QRegularExpression 正则表达式使用详解
c++·qt·正则表达式
闻缺陷则喜何志丹33 分钟前
【回文 字符串】3677 统计二进制回文数字的数目|2223
c++·算法·字符串·力扣·回文
yewq-cn34 分钟前
Joplin 客户端与服务端
笔记