Submission #581713

#TimeUsernameProblemLanguageResultExecution timeMemory
581713OspleiToys (CEOI18_toy)C++11
0 / 100
1 ms340 KiB
#include <bits/stdc++.h> using namespace std; typedef pair<int,int> ii; typedef long long ll; typedef vector<int> vi; typedef vector<vi> vvi; typedef vector<ii> vii; typedef vector<vii> wgraf; typedef pair<int,ii> edge; #define UNVISITED 0 #define VISITED 1 #define pb push_back #define F first #define S second vi d; set <ll> v; void j (ll p, ll n, ll c){ v.insert(c+n-1); if (n==1) return; if (n<d[p]*d[p]) return; if (p==d.size()) return; if (n%d[p]==0) j(p, n/d[p], c+d[p]-1); j(p+1, n, c); } int main(){ ll n; cin >> n; for (ll i=1; i*i<=n; i++){ if (n%i) continue; if (i>1) d.pb(i); } sort (d.begin(), d.end()); j(0, n, 0); cout << v.size() << "\n"; for (auto &i : v) cout << i << " "; cout << "\n"; }

Compilation message (stderr)

toy.cpp: In function 'void j(ll, ll, ll)':
toy.cpp:26:8: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   26 |   if (p==d.size()) return;
      |       ~^~~~~~~~~~
#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...