// B
#pragma GCC optimize ("O3")
#include "bits/stdc++.h"
using namespace std;
using ll = long long;
using db = long double;
const int N = 2e5 + 5, MOD = 1e9 + 7;
using mat = vector<vector<int>>;
int main(){
#ifdef ONLINE_JUDGE
ios_base::sync_with_stdio(0);cin.tie(0);
#endif // ONLINE_JUDGE
string a, b;
cin >> a >> b;
int n = a.size();
if((count(a.begin(),a.end(),'1')+count(b.begin(),b.end(),'1')) & 1){
cout << -1 << '\n';
return 0;
}
int ans = INT_MAX;
for(int i = 0; i < n; i++){
vector<int> tmp;
for(int j = 0; j < n; j++)
if(a[j] != b[(i+j)%n])
tmp.push_back(j);
int sum = 0;
for(int j = 0; j < tmp.size(); j += 2)
sum += (tmp[j + 1] - tmp[j]);
ans = min(ans, min(sum, n - sum));
}
cout << ans << '\n';
return 0;
}
Ly8gQgojcHJhZ21hIEdDQyBvcHRpbWl6ZSAoIk8zIikKI2luY2x1ZGUgImJpdHMvc3RkYysrLmgiCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnVzaW5nIGxsID0gbG9uZyBsb25nOwp1c2luZyBkYiA9IGxvbmcgZG91YmxlOwpjb25zdCBpbnQgTiA9IDJlNSArIDUsIE1PRCA9IDFlOSArIDc7CnVzaW5nIG1hdCA9IHZlY3Rvcjx2ZWN0b3I8aW50Pj47CgppbnQgbWFpbigpewojaWZkZWYgT05MSU5FX0pVREdFCmlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7Y2luLnRpZSgwKTsKI2VuZGlmIC8vIE9OTElORV9KVURHRQogICAgc3RyaW5nIGEsIGI7CiAgICBjaW4gPj4gYSA+PiBiOwogICAgaW50IG4gPSBhLnNpemUoKTsKICAgIGlmKChjb3VudChhLmJlZ2luKCksYS5lbmQoKSwnMScpK2NvdW50KGIuYmVnaW4oKSxiLmVuZCgpLCcxJykpICYgMSl7CiAgICAgIGNvdXQgPDwgLTEgPDwgJ1xuJzsKICAgICAgcmV0dXJuIDA7CiAgICB9CiAgICBpbnQgYW5zID0gSU5UX01BWDsKICAgIGZvcihpbnQgaSA9IDA7IGkgPCBuOyBpKyspewogICAgICB2ZWN0b3I8aW50PiB0bXA7CiAgICAgIGZvcihpbnQgaiA9IDA7IGogPCBuOyBqKyspCiAgICAgICAgaWYoYVtqXSAhPSBiWyhpK2opJW5dKQogICAgICAgICAgdG1wLnB1c2hfYmFjayhqKTsKICAgICAgaW50IHN1bSA9IDA7CiAgICAgIGZvcihpbnQgaiA9IDA7IGogPCB0bXAuc2l6ZSgpOyBqICs9IDIpCiAgICAgICAgc3VtICs9ICh0bXBbaiArIDFdIC0gdG1wW2pdKTsKICAgICAgYW5zID0gbWluKGFucywgbWluKHN1bSwgbiAtIHN1bSkpOwogICAgfQogICAgY291dCA8PCBhbnMgPDwgJ1xuJzsKCiAgcmV0dXJuIDA7Cn0=