题目描述
有两个整数,它们加起来等于某个整数,乘起来又等于另一个整数,它们到底是真还是假,也就是这种整数到底存不存在,实在有点吃不准,你能快速回答吗?看来只能通过编程。
例如:
- 在 `x + y = 9`,`x * y = 15` 时,找不到这样的整数 $x$ 和 $y$.
- 在 `x + y = 5`,`x * y = 4` 时,由于 `1 + 4 = 5`,`1 * 4 = 4`,所以两个整数可以为 $1$ 和 $4$.
- 在 `x + y = -1`,`x * y = -56` 时,由于 `7 + (-8) = -1`,`7 * (-8) = -56`,所以两个整数可以为 $7$ 和 $-8$.
输入格式
**多组数据,请处理到 $n=m=0$ 为止。**
每组数据包含两个整数 $n,m\ (-10000\lt n,m\lt 10000)$,它们分别表示整数的和与积。
输出格式
对于每组数据,如果存在整数对 $x,y$ 满足条件,在一行内输出 `Yes`,否则输出 `No`。
样例输入 #1
9 15
5 4
-1 -56
0 0