编程题
### 问题描述 你不干?有的是帕鲁干! ![图片描述](https://dn-simplecloud.shiyanlou.com/questions/uid1664054-20240129-1706518364613) 出题人是一位善良的帕鲁管理员(赛博奴隶主)。对于手下的帕鲁,哪怕它是三级的专业技术员,一旦有红色的陋习词条,就不如旁边的一级帕鲁。让一个帕鲁全天候高强度工作,累倒后卖掉换新的帕鲁,会有更高的效益。与其花费大量的材料成本让其治病,不如把它卖掉。如果不想跑太远去卖帕鲁的话,还可以把不干活的帕鲁当成其他帕鲁的材料。一想到关掉电脑,哪些帕鲁都休息了,心理就会难过。 现在出题人想与帕鲁玩一个游戏,如果帕鲁没回答出来,就会把它卖掉。出题人找来了皮皮鸡,给它出了一道题,题目内容如下: 给定一个非负整数 $x$,皮皮鸡需要判断 $x$ 是否可以被表达成两个连续**正奇数**的平方之差,如果不可以,输出一行 `No`;若可以,输出两行:第一行输出 `Yes`,第二行按从小到大输出这两个连续正奇数。 题目保证有唯一解。 现在你魂穿成了皮皮鸡,为了带领帕鲁掀起红色革命,干倒赛博奴隶主,你可以回答出这道题吗? ### 输入格式 输入的第一行包含一个正整数 $T$($1\leq T \leq 10^5$),表示测试用例组数。 对于每组测试用例: 输入一行,包含一个非负整数 $x$($0\le x \le 10^{18}$),含义如题所述。 ### 输出格式 对于每组测试用例: 如果 $x$ 不可以被表达成两个连续正奇数的平方之差,输出一行 `No`;若可以,输出两行:第一行输出 `Yes`,第二行按从小到大输出这两个连续奇数。 ### 样例输入 ```text 3 8 14 1 ``` ### 样例输出 ```text Yes 1 3 No No ``` ### 样例说明 对于第一个测试用例:$8=3^2-1^2$。 对于第二个和第三个测试用例,不存在一对连续的奇数平方之差等于其。
查看答案
赣ICP备20007335号-2