package main import ( "bufio" "fmt" "os" "strconv" ) var sc = bufio.NewScanner(os.Stdin) var rdr = bufio.NewReaderSize(os.Stdin, 1000000) func main() { sc.Split(bufio.ScanWords) w, h, n := nextInt64(), nextInt64(), nextInt64() ws := make(map[int64][]int64) hs := make(map[int64]int64) t := int64(0) for i := int64(0); i < n; i++ { s, k := nextInt64(), nextInt64() ws[s] = append(ws[s], k) hs[k]++ } for _, v := range ws { t += h - int64(len(v)) } for k, v := range hs { t += w - v for _, s := range ws { in := false for _, v2 := range s { if k == v2 { in = true break } } if in { continue } t-- } } fmt.Println(t) } func nextLine() string { sc.Scan() return sc.Text() } func nextInt() int { i, _ := strconv.Atoi(nextLine()) return i } func nextInt64() int64 { i, _ := strconv.ParseInt(nextLine(), 10, 64) return i }