完全平方数证明算法
concyclics 人气:0题意
Description
相信大家都做过"A+B Problem"了吧,这道题是它的加强版。
输入两个整数 A , B ,表示 A 个 B,例如 3 , 6 表示 666 。你只需要把“A个B”开根号。如果开根号后是个整数,输出开根后的数,否则输出“We donot have SPJ!”
解题思路
很显然,这题就是让我们判断“A个B”是不是完全平方数,我们从感觉上判断,形如 666 ⋯ 666 这样的数,一般来说都不是完全平方数,现在我们来证明一下。
证明
所以上述情况不是完全平方数。
故对于“ A个3,7”不是完全平方数。
所以对于任意三位数及以上的的"A个B",其必定不是完全平方数。
代码
// by Concyclics #include <iostream> using namespace std; int main() { int A,B; cin>>A>>B; if(B==0) { puts("0"); return 0; } if(A==1) { if(B==1) { puts("1"); return 0; } if(B==4) { puts("2"); return 0; } if(B==9) { puts("3"); return 0; } } puts("We donot have SPJ!"); return 0; }
加载全部内容