| 找出1与n之间(包括1和n)的全部“同构数”的个数。“同构数”是这样一种数,它出现在它的平方数的右端。例如,5的平方是25,5是25的右端的数;25也是一个同构数,它的平方是625。 |
输入
| 输入数据只有一组,在一行上输入正整数n(0<n<1000)。 |
输出
| 在1与n之间的“同构数”的个数。 |
难度
| 入门 |
输入示例
10 |
输出示例
3 |
#include<stdio.h>
main()
{
int n,i,count=0;
scanf("%d",&n);
for(i=1;i<n;i++){
if(i*i%10==i||i*i%100==i)
count++;}
printf("%d\n",count);
return 0;
}
本文介绍了一个算法,用于找出1到n之间所有同构数的数量。同构数是一种特殊类型的数,其特征在于它能完整地出现在其平方数的末尾。例如,5和25就是同构数,因为它们分别位于各自平方数25和625的末尾。文章提供了详细的算法实现,使用C语言编写,并解释了如何通过检查数的平方是否以该数本身结尾来确定一个数是否为同构数。
436

被折叠的 条评论
为什么被折叠?



