Source Code
#include <bits/stdc++.h>
#define ll long long
#define mk make_pair
#define pb push_back
using namespace std;
ll mod = 1000000007;

void solve(){
    int n ;
    cin >> n; ;
    vector<ll> v(n) ;

    int ans = 0 ;
    for(int i=0 ; i<n-1 ; i++) cin >> v[i] ;

    vector<vector<int>> num ;
    vector<int> temp ;
    for(int i=0 ; i<n ; i++){
        if(v[i] != 0) temp.pb(v[i]) ;
        else{
            num.pb(temp) ;
            temp.clear() ;
        }
    }
    if((int)temp.size()) num.pb(temp) ;

    for(int i=0 ; i<(int)num.size() ; i++){
        int ans1 = 0 , ans2 = 0 ;

        int ev = 0;
        for(int j=0 ; j<(int)num[i].size() ; j++){
            if(num[i][j] % 2 == 0) ev = 1 ;
            else if(ev == 1){
                ev = 0 ;
                ans1++;
            }
        }
        ev = 0 ;
        for(int j=(int)num[i].size() - 1 ; j>=0 ; j--){
            if(num[i][j] % 2 == 0) ev = 1 ;
            else if(ev == 1){
                ev = 0 ;
                ans2++;
            }
        }
        ans += min(ans1 , ans2) ;
    }
    ans += (int)num.size() - 1 ;

    cout << ans ;


}
int main(){
    int t = 1 ;
    //cin >> t ;
    while(t--){
        solve();
    }
    return 0;
}
Copy
Teleportation Apple
GNU G++17
1 ms
684 KB
Wrong Answer