本文已参与「新人创作礼」活动,一起开启掘金创作之路。

题意

Description

相信大家都做过”A+B Problem”了吧,这道题是它的加强版。

输入两个整数A,BA,B,表示AABB,例如3,63,6
表示666666。你只需要把“A个B”开根号。如果开根号后是个整数,输出开根后的数,否则输出“We doiOSnot have SPJ!”

题目链ios16

解题思路

很显然,这题就是让我们判断“A个B”是不是完全平方数,我们从感觉上判断,形如666⋯666666cdots666这样的数,一般来说都不是完全平方数,现在我们来证明一下。

证明

B=0B=0时,答案显然是00

接下来我们考虑B>0B>0的情况:

A=1A=1时,只有B=1,4,9B=1,4,9有解。

A=2A=2时,可以用枚举法得出无解。

A≥3Ageq3时:

首先,能在开根号后是整数的,一定是完全平方数,

显然,对于任意完全平方数x2x^2,有:

x2≡0,1mod4x^2 equiv0,1quaios是苹果还是安卓d moios越狱d quad 4

对于一个3位以上的数,我们可以把它拆分成100⋅a+b100 cdot a+b其中,bb是一个两位数。显ios越狱然:

100⋅a≡0mod4100⋅a+b≡ios模拟器bmod4100 cdot a eqios下载uiv 0 quad mod quad 4\ 100 cdot a +b equiv b quad mod quad 4

那么对于“AA1,5,91,5,9”,有

1⋯1≡11≡3mod45⋯5≡55≡3mod49⋯9≡99≡3mios应用商店od41cdots1 equiv 11 equiv3 enspace mod enspace 4\ 5cdots5 equiv 55 equiv3 enspace mod enspace 4\ 9cdots9 equiv 99 equiv3 enspace mod enspaios是苹果还是安卓ce 4\

对于“AA2,62,6”,有

2⋯2≡22≡2mod46⋯6≡66≡ios152mod42cdots2 equiv 22 eqios系统uiv2 enspaios14.4.1更新了什么ce mod enspace 4\ 6cdots6 equiv 66 equiv2 enspace mod enspace 4\

所以上述情况不是完全平方数。

对于一个偶完全平方数4⋅k24 cdot k^2,显然其除以44后仍然是完全平方数,而

4⋯44=1⋯18⋯84=2⋯2frac{4cdots4}{4}=1cdots1\ frac{8cdots8}{4}=2cios模拟器dots2

均不是完全平方数,故对于“AA4,84,8”不是完全平方数。

对于3,73,7,我们考虑,一个完全平方数x2x^2,有:

x≡0,1,2,3,4mod5x2≡0,1,4mod5xequiv 0,1,2,3,4enspace modenspace5\ x^2equiv 0,1,4 enspace mod enspace 5

而:

3⋯3≡33≡3mod57⋯7≡77≡2modios模拟器53cdots3 equios14.4.1更新了什么iv 33 equiv3 enspace mod enspace 5\ 7cdots7 equiv 77 equiv2 enspace mod enios模拟器space 5\

故对于“AA3,73,7”不是完ios系统全平方数。

所以对于任意三位数及以上的的”A个Bios16“,其必定不是完全平方数。

代码

// 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;
}