package main import ( "fmt" ) var ( N int a []int b []int ) func abs(x int64) int64 { if x < 0 { return x * -1 } return x } func resolve() int64 { ret := int64(0) maxLen := int64(a[0]*1 + b[0]*4) rest := a[0] % 2 for i := 0; i < N; i++ { tmp := int64(a[i]*1 + b[i]*4) if a[i]%2 != rest { return -1 } if maxLen > tmp { ret += abs(maxLen-tmp) / 2 continue } ret += abs(maxLen-tmp) / 2 * int64(i) maxLen = tmp } return ret } func main() { fmt.Scanf("%d\n", &N) a = make([]int, N) b = make([]int, N) for i := 0; i < N; i++ { fmt.Scanf("%d %d\n", &a[i], &b[i]) } fmt.Println(resolve()) }