| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1331023 | boclobanchat | Toys (CEOI18_toy) | C++20 | 5092 ms | 1932 KiB |
#include<bits/stdc++.h>
using namespace std;
const int MAXN=1444;
int divi[MAXN];
set<int> st;
void backtrack(int i,int n,int val,int ans)
{
if(val==1)
{
st.insert(ans);
return ;
}
for(int j=i;j<=n;j++) if(val%divi[j]==0) backtrack(j,n,val/divi[j],ans+divi[j]-1);
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n;
cin>>n;
int cnt=0;
for(int i=1;i*i<=n;i++) if(n%i==0)
{
if(i*i!=n) divi[++cnt]=n/i;
divi[++cnt]=i;
}
sort(divi+1,divi+cnt+1);
backtrack(2,cnt,n,0);
cout<<st.size()<<"\n";
for(auto v:st) cout<<v<<" ";
}
| # | 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... | ||||
