제출 #125994

#제출 시각아이디문제언어결과실행 시간메모리
125994streifiOrchard (NOI14_orchard)C++14
13 / 25
82 ms10236 KiB
#include <iostream> #include <vector> using namespace std; const int INF = 0x3f3f3f3f; signed main() { ios::sync_with_stdio(0); cin.tie(0); int N, M; cin >> N >> M; vector<int> v(M), cum(M+1, 0); for (int m = 0; m < M; ++m) { cin >> v[m]; if (v[m] == 0) v[m] = -1; cum[m+1] = cum[m]+v[m]; //cout << cum[m+1] << endl; } int mxpos = M-1; int best = INF; for (int m = M-1; m >= 0; --m) { if (cum[m+1] > cum[mxpos+1]) mxpos = m; int cur1 = (M-mxpos-1)+(cum[M]-cum[mxpos+1]); int cur2 = (mxpos-m+1)-(cum[mxpos+1]-cum[m]); int cur3 = m + cum[m]; //cout << cur1 << " " << cur2 << " " << cur3 << endl; best = min(best, cur1+cur2+cur3); } cout << best/2 << 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...