检测到 KaTeX 加载失败,可能会导致文中的数学公式无法正常渲染。
#题面
#题目描述
小 X 遇到了一道题:
给定自然数 ,求满足下列条件的自然数对 的个数:
他不会,只好求助于精通数学的你。
如果有无限多个自然数对满足条件,那么你只需要输出 inf
即可。
#输入格式
一行两个整数 。
#输出格式
如果个数有限,一行一个整数,表示个数。
如果个数无限,一行一个字符串 inf
。
#输入输出样例
样例输入 #1
5 15
样例输出 #1
1
样例解释 #1
.
样例输入 #2
4 4
样例输出 #2
inf
样例输入 #3
12 6
样例输出 #3
0
样例输入 #4
96 96
样例输出 #4
7
样例输入 #5
10000 9999997
样例输出 #5
6
#数据范围与约定
本题采用捆绑测试。
- Subtask 1(3 points):。
- Subtask 2(6 points):,不存在无限个数的情况。
- Subtask 3(9 points):,不存在无限个数的情况。
- Subtask 4(13 points):,不存在无限个数的情况。
- Subtask 5(14 points):,。
- Subtask 6(14 points):。
- Subtask 7(14 points):。
- Subtask 8(27 points):无特殊限制。
对于 的数据,,。
#思路
先观察题目中给出的这个式子:
对 式进行移项,得:
对 式右侧配方,得:
将 式两侧同乘 ,得:
对 式再次移项,得:
展开 式左侧,得:
由题,显然 ,接下来分类讨论:
-
当 时,:
左右同乘 ,得:
记 ,(),显然可以将 分解为两数之积可以得到一组 。又有:
可以枚举 再据此计算出 ,进而再计算出 的取值。
-
当 时,:
记 ,(),显然可以将 分解为两数之积可以得到一组 。又有:
可以枚举 再据此计算出 ,进而再计算出 的取值。
-
当 时,:
由 可知, 为偶数。可得 。
显然对于任意一个 都有一个与其对应的 满足条件。此时有无穷多组解。
#代码
1 |
|