Submission #1333736

#TimeUsernameProblemLanguageResultExecution timeMemory
1333736HduongToys (CEOI18_toy)C++20
0 / 100
0 ms344 KiB
#include <bits/stdc++.h>
#define task "task"

using namespace std;
const long long INF = 1e18;

long long n;
set<long long> ans;

void dfs (long long rem, long long last, long long sum, int k) {
  if (rem >= last) {
    ans.insert(sum + rem - (k + 1));
  }

  for (long long i = last; i*i <= rem; i++) {
    if (rem % i == 0) {
      dfs(rem / i, i, sum + i, k + 1);
    }
  }
}

int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);

  if (fopen(task".inp", "r")) {
    freopen(task".inp", "r", stdin);
    freopen(task".out", "w", stdout);
  }

  cin >> n;

  dfs(n, 2, 0, 0);

  cout << ans.size() << "\n";
  for (auto x : ans) cout << x << " ";

}

Compilation message (stderr)

toy.cpp: In function 'int main()':
toy.cpp:27:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   27 |     freopen(task".inp", "r", stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
toy.cpp:28:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   28 |     freopen(task".out", "w", stdout);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...