#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=1e5+10,mod=1e9+7;
int dp[2][110][25000];
signed main()
{
string s;
cin>>s;
int n=s.size();
s="?"+s;
int c0=0;
for(int i=1;i<=n;i++) if(s[i]=='0') c0++;
memset(dp,0x3f,sizeof(dp));
int K=12000;
dp[0][0][K]=0;
for(int i=1;i<=n;i++)
{
memset(dp[i%2],0x3f,sizeof(dp[i%2]));
for(int j=0;j<=i;j++)
{
int k=i-j-1;
for(int p=-(n*n);p<=n*n;p++)
{
if(j) dp[i%2][j][p+K]=min(dp[i%2][j][p+K],dp[(i+1)%2][j-1][p+k+K]+(s[i]=='1'));
if(j!=i) dp[i%2][j][p+K]=min(dp[i%2][j][p+K],dp[(i+1)%2][j][p-j+K]+(s[i]=='0'));
}
}
}
cout<<dp[n%2][c0][K]/2;
return 0;
}