#P15021. [UOI 2020 II Stage] 方程

[UOI 2020 II Stage] 方程

题目描述

谢别克有三个整数 xxyyzz。谢别克希望将这三个数中的一个进行三次方,另一个进行平方,剩下的一个保持不变,使得它们的总和等于 kk

换句话说,公式如下所示:

a3+b2+c=ka^3 + b^2 + c = k

你的任务是确定,谢别克必须将 xxyyzz 中的哪一个数进行三次方,哪一个进行平方,哪一个保持不变,才能使它们的总和等于 kk

如果存在多种选择方式,则 输出任意一种

请注意,必须有 恰好一个 数被三次方,恰好一个 数被平方,以及 恰好一个 数保持不变。

输入格式

第一行包含四个整数 xxyyzzkk (1x,y,z103,1k1091 \leq x, y, z \leq 10^3, 1 \leq k \leq 10^9) —— 表示谢别克拥有的三个数,以及期望的运算后(一个数三次方、一个数平方、一个数不变)的总和。

输出格式

在一行中输出三个整数 aabbcc —— 分别表示将被三次方的数、将被平方的数和保持不变的那个数。如果无法从给定的三个数中选择这样的 aabbcc 使得 a3+b2+c=ka^3 + b^2 + c = k,则输出 -1 -1 -1

如果存在多个正确答案,输出任意一个。

4 1 9 26
1 4 9
1 2 3 100
-1 -1 -1

提示

在第一个样例中,13+42+9=1+16+9=261^3 + 4^2 + 9 = 1 + 16 + 9 = 26

在第二个样例中没有答案。

翻译由 DeepSeek V3 完成