#include using namespace std; #define BIT(x) (1ull << (x)) #define FOR(i, a, b) for (int i = (int)(a); i < (int)(b); i++) #define REP(i, n) FOR(i, 0, n) #define RFOR(i, a, b) for (int i = (int)(b) - 1; i >= (int)(a); i--) #define RREP(i, n) RFOR(i, 0, n) #define EACH(i, v) for (__typeof((v).begin()) i = (v).begin(); i != (v).end(); ++i) #define ALL(v) (v).begin(), (v).end() #define RALL(v) (v).rbegin(), (v).rend() #define UNIQ(v) do {sort(ALL(v)); (v).erase(unique(ALL(v)), (v).end());} while (0) #define PB push_back #define MP make_pair #define SIZE(v) ((int)(v).size()) #define DEBUG(x) cout << #x << " = " << x << endl int main() { int n; int c[1000]; scanf("%d", &n); int cnt = 0; int maxi = 0; REP(i, n){ int a, b; scanf("%d %d", &a, &b); c[i] = a + b * 4; maxi = max(maxi, c[i]); cnt += (c[i] & 1); } if (cnt != 0 && cnt != n){ puts("-1"); return 0; } long long res = 0; REP(i, n){ res += (maxi - c[i]) / 2; } printf("%lld\n", res); }