Submission #1171689

#TimeUsernameProblemLanguageResultExecution timeMemory
1171689bozocodeSirni (COCI17_sirni)C++20
0 / 140
94 ms3144 KiB
#include <bits/stdc++.h> using namespace std; using i64 = long long; const int MAXV = 1e7; vector<bool> appear(MAXV + 1); vector<bool> sieve(MAXV + 1); int main() { int N; cin >> N; vector<int> candy(N); int last = MAXV; for (int i = 0; i < N; i++) { cin >> candy[i]; appear[candy[i]] = true; last = min(last, candy[i]); } i64 ans = 0; for (int i = 1; i <= MAXV; i++) { if (sieve[i]) { last = i; continue; } if (!appear[i]) { continue; } bool f = false; for (int j = 2 * i; j <= MAXV; j += i) { if (appear[j] && sieve[j]) { f = true; } sieve[j] = true; } ans += f ? 0 : i - last; } cout << ans << endl; }
#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...