#include using namespace std; int main() { string k; cin >> k; if (k[0] == '0') { cout << "-1" << endl; return 0; } bool arr[41]; int arrHelp[41]; int arrTmp[41]; for (int i = 0; i < k.length(); i++) { arr[i] = arrHelp[i] = (k[i] == '0') ? false : true; } int s = k.length(); bool allOnes = false; int cnt = 0; int cntMax = 0; int tmpCnt = 0; int kMax = 0; //check full; while (true) { //for (int i = 0; i < s; ++i) { // cout << arr[i] << " "; //} //cout << endl; cntMax = tmpCnt = kMax = 0; allOnes = true; for (int i = 0; i < s; ++i) { if (!arr[i]) { allOnes = false; break; } } if (allOnes) { break; } cnt++; for (int k = 1; k < s; ++k) { tmpCnt = 0; //for (int j = 0; j < s; ++j) { // arrHelp[j] = arr[j]; //} for (int j = 0; j < s - k; ++j) { if (arr[j] == true && arr[j+k] == false) { tmpCnt++; } } if (tmpCnt > cntMax) { cntMax = tmpCnt; kMax = k; } } // cout << "k " << kMax << " " << cntMax << endl; for (int i =0; i < s; i++) { arrTmp[i] = arr[i]; } //cout << "-" << endl; // for (int i = 0; i < s; ++i) { // cout << arr[i] << " "; // } // cout << endl; for (int i = 0; i < s - kMax; ++i) { if (arrTmp[i] && !arrTmp[i+kMax]){ arr[i+kMax] = 1; } } // for (int i = 0; i < s; ++i) { // cout << arr[i] << " "; // } //cout << endl; } cout << cnt << endl; return 0; }