Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <vector>#include <cmath>using namespace std;void Cal(int m, vector<int> &nums){if(m == 1)nums.push_back(1);else{int x = sqrt(m);for(int i = 1; i <= x; i++){if(m % i == 0)nums.push_back(i);}int len = nums.size();if(nums[len - 1] * nums[len - 1] == m)len--;for(int i = len - 1; i >= 0; i--)nums.push_back(m / nums[i]);}}void print(vector<int> &nums){int len = nums.size();for(int i = 0; i < len; i++){cout<<nums[i]<<" ";}cout<<endl;}