#12020. Automorphic Numbers / 自守数
Automorphic Numbers / 自守数
Problem J32: Automorphic Numbers / 自守数
版权信息: JLOJ2451
任务总览
任务名称 | 时间限制 | 内存限制 | 分数 |
---|---|---|---|
自守数 | 1 sec | 1024 MB | 10 points |
题目描述
自守数 是指一个数的平方的 末尾部分等于它本身 的自然数。
例如:
- ,尾数是 25 的最后一位是 5,符合;
- ,尾数为 76,等于原数 76,符合。
请你输出指定范围内所有的自守数。
输入格式
输入一行两个正整数 和 (),表示待检查的区间范围。
输出格式
将区间 内的所有自守数 逐行输出 ,每个数占一行,按从小到大顺序排列。
输入输出样例
输入示例
1 200000
输出示例
1
5
6
25
76
376
625
9376
90625
109376
题目分析与解法
✅ 定义回顾:
若某个正整数 满足:
其中 是 的位数,则 是 自守数 。
✅ 解法建议(暴力判断):
- 遍历 从 到 ;
- 令 ,即 的十进制位数;
- 判断: .满足条件则输出。
时间复杂度分析
操作 | 复杂度 |
---|---|
枚举判断 | |
模运算与平方 | |
适用范围 | 推荐 |
若范围较大建议只枚举固定自守数(数量稀少),或使用打表优化。