Untitled
unknown
plain_text
6 months ago
1.0 kB
2
Indexable
void Gojo(){ int n;cin>>n; map<int,int> mp; vector<int> v (n+1); for(int i = 1 ; i <= n ; i++){ cin>> v[i]; } v.push_back(0); for(int i = 1 ; i <= n ; i++){ int idx1 = i , idx2 = n - i +1; int curr = 0 , x =0; if(v[idx1] == v[idx1 +1] && idx1 +1 <= n) curr++; if(v[idx1] == v[idx1 -1]) curr++; if(v[idx2] == v[idx2 +1])curr++; if(v[idx2] == v[idx2 -1] && idx2 > 0)curr++; if(v[idx2] == v[idx1 +1] && idx1 +1 <= n) x++; if(v[idx2] == v[idx1 -1]) x++; if(v[idx1] == v[idx2 +1])x++; if(v[idx1] == v[idx2 -1] && idx2-1 > 0)x++; // cout << curr << ' '<< x << endl; if(curr > x)swap(v[idx1],v[idx2]); } int cnt = 0; // for(int i = 1 ; i <= n ; i++) // cout << v[i] <<' ';cout << endl; for(int i = 1 ; i < n ; i++) if(v[i] == v[i+1]) cnt++; cout << cnt ; }
Editor is loading...
Leave a Comment