AT_abc428_d [ABC428D] 183184
题目描述
对于正整数 $x,y$,定义 $f(x,y)$ 为将 $x,y$ 以字符串形式拼接起来的值。比如 $f(3,14)=314$,$f(100,3)=1003$。
给定两个正整数 $C,D$,求出所有满足以下条件的整数 $x$ 的数量:
- $1\le x \le D$
- $f(C,C+x)$ 为一个完全平方数。
给定 $T$ 个测试用例,请你依次求出所有测试用例的答案。
输入格式
输入从标准输入给出,格式如下:
> $ T $
> $ \textrm{case}_1 $
> $ \textrm{case}_2 $
> $ \vdots $
> $\textrm{case}_T$
其中 $\textrm{case}_T$ 表示第 i 组测试用例。每组测试用例如下:
> $C\ D$
输出格式
输出 $T$ 行,第 $i$ 行($1≤i≤T$)为第 $i$ 组测试用例的答案。
说明/提示
对于第一组测试用例,有三个满足条件的 $x$:$x=5,37,80$。
- 当 $x=3$,$f(C,C+5)=f(4,9)=49=7^2$
- 当 $x=37$,$f(C,C+37)=f(4,41)=441=21^2$
- 当 $x=80$,$f(C,C+5)=f(4,85)=484=22^2$
对于第二组测试用例,有两个满足条件的 $x$:$x=1,3133$。
- 当 $x=1$,$f(C,C+1)=f(183,184)=183184=428^2$
- 当 $x=3133$,$f(C,C+3133)=f(183,3316)=1833316=1354
^2$
对于第三组测试用例,没有满足条件的 $x$。
对于第四组测试用例,有 $1421$ 个满足条件的 $x$。