← Home
```go
package main

import (
	"bufio"
	"fmt"
	"os"
)

func floorDiv(x, d int64) int64 {
	q := x / d
	r := x % d
	if r != 0 && x < 0 {
		q--
	}
	return q
}

func abs(x int64) int64 {
	if x < 0 {
		return -x
	}
	return x
}

func main() {
	in := bufio.NewReader(os.Stdin)
	out := bufio.NewWriter(os.Stdout)
	defer out.Flush()

	var a, b, x1, y1, x2, y2 int64
	fmt.Fscan(in, &a, &b, &x1, &y1, &x2, &y2)

	u1, v1 := x1+y1, x1-y1
	u2, v2 := x2+y2, x2-y2

	du := abs(floorDiv(u1, 2*a) - floorDiv(u2, 2*a))
	dv := abs(floorDiv(v1, 2*b) - floorDiv(v2, 2*b))

	if du > dv {
		fmt.Fprintln(out, du)
	} else {
		fmt.Fprintln(out, dv)
	}
}
```