← Home
```go
package main

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

var reader *bufio.Reader
var writer *bufio.Writer

func main() {
	reader = bufio.NewReader(os.Stdin)
	writer = bufio.NewWriter(os.Stdout)
	defer writer.Flush()

	var t int64
	fmt.Fscan(reader, &t)

	// Count triples (a,b,c) with |a|+|b|+|c| <= t
	// = sum over a,b of max(0, min(t-|a|-|b|, ...) * 2 + 1) etc
	// Actually count pairs (a,b) with |a|+|b| <= t, then for each such pair
	// c can range from -(t-|a|-|b|) to (t-|a|-|b|)
	// Total = sum_{a=-t}^{t} sum_{b=-(t-|a|)}^{t-|a|} (2*(t-|a|-|b|)+1)

	var ans int64
	for a := int64(-t); a <= t; a++ {
		rem := t - abs64(a)
		// sum over b from -rem to rem of (2*(rem-|b|)+1)
		// = sum_{b=-rem}^{rem} (2*rem - 2*|b| + 1)
		// = (2*rem+1)*(2*rem+1) - 2*2*sum_{b=0}^{rem} b  ... let me compute carefully
		// = sum_{b=-rem}^{rem} (2*(rem-|b|)+1)
		// by symmetry = (2*rem+1) + 2*sum_{b=1}^{rem}(2*(rem-b)+1)
		// sum_{b=1}^{rem}(2*(rem-b)+1) = sum_{k=0}^{rem-1}(2k+1) = rem^2
		// total = (2*rem+1) + 2*rem^2
		ans += (2*rem+1) + 2*rem*rem
	}

	fmt.Fprintln(writer, ans)
}

func abs64(a int64) int64 {
	if a < 0 {
		return -a
	}
	return a
}
```