Submission #679150

#TimeUsernameProblemLanguageResultExecution timeMemory
679150KiprasToys (CEOI18_toy)C++17
0 / 100
126 ms262144 KiB
#include <bits/stdc++.h> typedef long long ll; using namespace std; ll n; set<ll> res; vector<ll> divv; void gen(ll mult, ll sum, ll last){ //cout<<k<<" "<<sum<<" "<<mult<<endl; if(mult==1){ res.insert(sum); return; } for(auto i : divv){ //cout<<i<<" "<<mult*i<<" "<<n%(mult*i)<<endl; if(i<last)continue; if(mult%i==0){ gen(mult/i, sum+i-1, i); } } } int main() { ios_base::sync_with_stdio(0);cin.tie(nullptr); cin>>n; for(int i = 1; i*i <= n; i++){ if(n%i==0){ divv.push_back(i); if(n/i!=i)divv.push_back(n/i); } } gen(n, 0, 0); cout<<res.size()<<"\n"; for(auto i : res){ cout<<i<<" "; } return 0; }
#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...