小 x x x的难题 题解
这道题目直接用数学方法来解。
a
3
+
b
3
=
(
a
+
b
)
(
a
2
−
a
b
+
b
2
)
=
(
a
+
b
)
(
a
2
+
b
2
−
a
b
)
\begin{aligned} a^3+b^3&=(a+b)(a^2-ab+b^2)\\ &=(a+b)(a^2+b^2-ab) \end{aligned}
a3+b3=(a+b)(a2−ab+b2)=(a+b)(a2+b2−ab)
因式分解
a
2
+
b
2
a^2+b^2
a2+b2,得
(
a
+
b
)
2
−
2
a
b
(a+b)^2-2ab
(a+b)2−2ab。
a
3
+
b
3
=
(
a
+
b
)
(
a
2
+
b
2
−
a
b
)
=
(
a
+
b
)
(
(
a
+
b
)
2
−
3
a
b
)
=
(
a
+
b
)
3
−
3
a
b
(
a
+
b
)
\begin{aligned} a^3+b^3&=(a+b)(a^2+b^2-ab)\\ &=(a+b)((a+b)^2-3ab)\\ &=(a+b)^3-3ab(a+b) \end{aligned}
a3+b3=(a+b)(a2+b2−ab)=(a+b)((a+b)2−3ab)=(a+b)3−3ab(a+b)
所以
a
3
+
b
3
=
(
a
+
b
)
3
−
3
a
b
(
a
+
b
)
a^3+b^3=(a+b)^3-3ab(a+b)
a3+b3=(a+b)3−3ab(a+b)。
直接导入运算即可。
但是由于
a
+
b
,
a
b
≤
1
0
10
a+b,ab≤10^{10}
a+b,ab≤1010,所以数据会爆
l
o
n
g
l
o
n
g
long\:long
longlong。因此我们只能用高精度计算了,高精度的计算方式其实就是模拟了我们学的竖式计算,通过字符串来进行操作。
本题涉及到因式分解,如果有不理解的建议参考这个网站。