AT_aising2020_c XYZ Triplets

题目描述

令 $f(n)$ 表示满足以下两个条件的整数三元组 $(x, y, z)$ 的个数: - $1 \leq x, y, z$ - $x^2 + y^2 + z^2 + xy + yz + zx = n$ 给定一个整数 $N$,请分别求出 $f(1), f(2), f(3), \ldots, f(N)$。

输入格式

输入以以下格式从标准输入中给出。 > $N$

输出格式

请输出 $N$ 行。第 $i$ 行输出 $f(i)$ 的值。

说明/提示

## 限制条件 - 所有输入均为整数。 - $1 \leq N \leq 10^4$ ## 样例解释 1 - 当 $n=6$ 时,只有 $(1,1,1)$ 满足题目中的两个条件。因此 $f(6)$ 为 $1$。 - 当 $n=11$ 时,$(1,1,2),(1,2,1),(2,1,1)$ 这 $3$ 个三元组满足题目中的两个条件。因此 $f(11)$ 为 $3$。 - 当 $n=17$ 时,$(1,2,2),(2,1,2),(2,2,1)$ 这 $3$ 个三元组满足题目中的两个条件。因此 $f(17)$ 为 $3$。 - 当 $n=18$ 时,$(1,1,3),(1,3,1),(3,1,1)$ 这 $3$ 个三元组满足题目中的两个条件。因此 $f(18)$ 为 $3$。 由 ChatGPT 4.1 翻译