#include <bits/stdc++.h>
using namespace std;
bool isAlt(const string& s) {
for (size_t i = 1; i < s.size(); ++i)
if (s[i] == s[i - 1]) return false;
return true;
}
int minOps(const string& s) {
if (isAlt(s)) return 0;
int c0 = 0, c1 = 0;
for (char ch : s) ch == '0' ? c0++ : c1++;
return abs(c0 - c1) > 1 ? 2 : 1;
}
int main() {
int T;
cin >> T;
while (T--) {
string S;
cin >> S;
cout << minOps(S) << endl;
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgpib29sIGlzQWx0KGNvbnN0IHN0cmluZyYgcykgewogICAgZm9yIChzaXplX3QgaSA9IDE7IGkgPCBzLnNpemUoKTsgKytpKQogICAgICAgIGlmIChzW2ldID09IHNbaSAtIDFdKSByZXR1cm4gZmFsc2U7CiAgICByZXR1cm4gdHJ1ZTsKfQoKaW50IG1pbk9wcyhjb25zdCBzdHJpbmcmIHMpIHsKICAgIGlmIChpc0FsdChzKSkgcmV0dXJuIDA7CiAgICAKICAgIGludCBjMCA9IDAsIGMxID0gMDsKICAgIGZvciAoY2hhciBjaCA6IHMpIGNoID09ICcwJyA/IGMwKysgOiBjMSsrOwogICAgCiAgICByZXR1cm4gYWJzKGMwIC0gYzEpID4gMSA/IDIgOiAxOwp9CgoKCmludCBtYWluKCkgewoJaW50IFQ7CiAgICBjaW4gPj4gVDsKICAgIHdoaWxlIChULS0pIHsKICAgICAgICBzdHJpbmcgUzsKICAgICAgICBjaW4gPj4gUzsKICAgICAgICBjb3V0IDw8IG1pbk9wcyhTKSA8PCBlbmRsOwogICAgfQogICAgcmV0dXJuIDA7Cgp9Cg==