#include <bits/stdc++.h>
using namespace std;
set<int> ans;
void dfs(int n, int s) {
// remaining divisors multiply to n, s sum is used
ans.insert(n+s-1);
for (int i = 2; i*i <= n; i++) {
if (n%i == 0) {
dfs(n/i, s+i-1);
}
}
}
void solve() {
int n;
cin >> n;
dfs(n, 0);
cout << ans.size() << '\n';
for (int i : ans) cout << i << ' ';
}
signed main() {
cin.tie(0)->sync_with_stdio(0);
solve();
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |