Submission #1214176

#TimeUsernameProblemLanguageResultExecution timeMemory
1214176vako_pToys (CEOI18_toy)C++20
100 / 100
406 ms2416 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define pb push_back #define ff first #define sd second #define debug(x) cerr << #x << "----> " << x << endl; //#pragma GCC optimize("unroll-loops") //#pragma GCC optimize("Ofast") //#pragma GCC optimize("O3") const int mxN = 1e6 + 5; ll n,cc = 0; bitset<1000000000> vis; vector<ll> ans; void f(ll x, ll val = 0, ll last = 1e9){ if(!vis[val + x - 1]){ ans.pb(val + x - 1); vis[val + x - 1] = true; } for(int i = 2; i <= min((ll)sqrtl(x), last); i++){ if(x % i == 0){ ll k = i; f(x / k, val + k - 1, k); k = x / i; if(k <= last) f(x / k, val + k - 1, k); } } } int main(){ ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin >> n; f(n); sort(ans.begin(), ans.end()); cout << ans.size() << '\n'; for(auto it : ans) cout << it << ' '; }
#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...