P14738 [ICPC 2021 Seoul R] Grid Triangle

题目描述

在三维网格中,**格点三角形**指由三个整点构成、且其中一个整点为原点 $(0,0,0)$ 的三角形,并满足如下性质: 存在三个互不相同的正整数 $X, Y, Z$,使得对于该三角形的任意一对顶点,都可以将一个尺寸为 $X \times Y \times Z$ 的长方体在三个坐标轴方向上平移和旋转(即把长方体的三条边分别重新对应到 $x,y,z$ 轴),并在保证长方体的三条边分别与对应的坐标轴平行的前提下,使得这对点恰好成为该长方体的**一对对角顶点(也就是距离最远的一对顶点)**。 例如,由三点 $(0,0,0)$、$(1,2,3)$、$(-2,3,1)$ 构成的三角形就是一个格点三角形,其对应的长方体尺寸为 $1 \times 2 \times 3$。具体来说: * 两点 $(1,2,3)$ 与 $(-2,3,1)$ 是长方体 $$ \{(x,y,z)\mid -2 \le x \le 1,\ 2 \le y \le 3,\ 1 \le z \le 3\} $$ 的一对对角顶点,该长方体尺寸为 $3 \times 1 \times 2$; * 两点 $(0,0,0)$ 与 $(1,2,3)$ 是长方体 $$ \{(x,y,z)\mid 0 \le x \le 1,\ 0 \le y \le 2,\ 0 \le z \le 3\} $$ 的一对对角顶点,该长方体尺寸为 $1 \times 2 \times 3$; * 两点 $(0,0,0)$ 与 $(-2,3,1)$ 是长方体 $$ \{(x,y,z)\mid -2 \le x \le 0,\ 0 \le y \le 3,\ 0 \le z \le 1\} $$ 的一对对角顶点,该长方体尺寸为 $2 \times 3 \times 1$。 并且,这三个长方体都与网格坐标轴平行。 你的任务是:在给定边界的三维网格中,计算满足上述条件的格点三角形的数量。边界由三个正整数 $A,B,C$ 给出,要求三角形的所有点都必须位于集合 $$ \{(x,y,z)\mid -A \le x \le A,\ -B \le y \le B,\ -C \le z \le C\} $$ 之内。

输入格式

你的程序需要从标准输入读取数据。输入恰好为一行,包含三个整数 $A, B, C$($1 \le A, B, C \le 10,000,000$)。

输出格式

你的程序需要向标准输出写入数据。输出恰好一行。该行应包含在由 $A, B, C$ 界定的三维网格内的格点三角形的数量。

说明/提示

由 ChatGPT 5.2 翻译