Submission #889459

#TimeUsernameProblemLanguageResultExecution timeMemory
889459codefoxSirni (COCI17_sirni)C++14
0 / 140
5112 ms235836 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define pii pair<int, int> #define int ll int32_t main() { int n; cin >> n; vector<int> nums(n); set<int> mult; set<int> num; set<int> n2; map<int, int> mini; for(int i = 0; i < n; i++) { cin >> nums[i]; num.insert(nums[i]); n2.insert(nums[i]); mini[nums[i]]=1e18; } sort(nums.begin(), nums.end()); ll sol = 0; mini[nums[0]] = 0; for (int ele:n2) { int mn = mini[ele]; num.erase(ele); for (int j = ele; j <= 1e7; j+=ele) { auto u = num.lower_bound(j); if (u != num.end()) { int iu = *u; mini[iu]=min(mini[iu], iu-j); mn = min(mn, iu-j); } mult.insert(j); } sol += mn; } cout << sol; 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...
#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...