Submission #95036

#TimeUsernameProblemLanguageResultExecution timeMemory
95036Osama_AlkhodairyDEL13 (info1cup18_del13)C++17
0 / 100
11 ms1140 KiB
#include <bits/stdc++.h> using namespace std; #define finish(x) return cout << x << endl, 0 #define ll long long void solve(){ int n, k; cin >> n >> k; vector <int> a; for(int i = 0 ; i < k ; i++){ int x; cin >> x; a.push_back(x); } a.push_back(0); a.push_back(n + 1); sort(a.begin(), a.end()); vector <int> b; for(int i = 1 ; i < (int)a.size() ; i++) b.push_back(a[i] - a[i - 1] - 1); vector <int> c; for(auto &i : b){ int x = i; int cur = 0; while(x >= 3){ x -= 2; cur++; } c.push_back(cur); } for(int i = 0 ; i + 1 < (int)b.size() ; i++){ while(c[i] && b[i + 1] < b[i]) b[i] -= 2, c[i]--; if(b[i + 1] < b[i]){ cout << -1 << endl; return; } b[i + 1] -= b[i]; } if(b.back() % 2){ cout << -1 << endl; return; } cout << 0 << endl << endl; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); int T; cin >> T; while(T--) solve(); }
#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...