男可以用1表示,女用0表示
01的数量一样,比较谁在奇数位更优
01的数量不一样,多的一定在奇数位
注:题目并没有说,给出的n个学号一定是在[1,n]的范围内
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int const N=1e6+7;
int n,cntj,x,y,ans;
int a;
int main(){
cin >> n;
for(int i=1;i<=n;++i){
cin >> a;
if(a&1){
cntj++;
if(i&1) x++;
else y++;
}
}
if(cntj*2==n) ans=min(x,y);
else if(cntj*2<n) ans=x;
else ans=y;
cout << ans;
return 0;
}
京公网安备 11010502036488号