数据结构与算法学习笔记----约数
@@ author: 明月清了个风
@@ first publish time: 2024.12.30
ps⭐️主要是求约数,约数的个数,约数的和,涉及到算术基本定理的相关内容,第三题的讲解合并在第二题的思路里一起了。
Acwing 869. 试除法求约数
原题链接\]([869. 试除法求约数 - AcWing题库](https://www.acwing.com/problem/content/description/871/))
给定 n n n个正整数 a i a_i ai,对于每个整数 a i a_i ai,请你按照从小到大的顺序输出它的所有约数
#### 输入格式
第一行包含整数 n n n,
接下来 n n n行,每行包含一个正整数 a i a_i ai。
#### 输出格式
输出 n n n行,其中每 i i i行输出第 i i i个整数 a i a_i ai的所有约数。
#### 数据范围
1 ≤ n ≤ 100 1 \\le n \\le 100 1≤n≤100,
1 ≤ a i ≤ 2 × 1 0 9 1 \\le a_i \\le 2\\times 10\^9 1≤ai≤2×109
#### 思路
试除法和质数中是一样的,只是我们统计的量不一样了
需要注意的就是时间复杂度了,**数论中的题目需要注意时间复杂度**,这关系到我们要使用什么方法解决
这题的时间复杂度是 O ( n × a ) O(n \\times \\sqrt{a}) O(n×a ), a a a的范围如题,因此可以得到整体时间复杂度大概在400万\~500万。
#### 代码
```cpp
#include