1、水仙花数,3位整数,每一个位上的数字立方之和等于这个数本身,那么这个数字就是水仙花数,具体实现代码如下:
public bool ShuiXianHuaShu(int j)
{
int baiWeiShu = j / 100;
int shiWeiShu = j / 10 - baiWeiShu * 10;
int geWeiShu = j % 10;
if (Math.Pow(baiWeiShu, 3) + Math.Pow(shiWeiShu, 3) + Math.Pow(geWeiShu, 3) == j)
{
return true;
}
return false;
}
我第一个想法是转变成字符串,然后转变成字符数组,然后遍历,3次方求值然后求和,经过上面的算法之后发现还是上面的效率更高,我的想法有点复杂了。
上面代码不一定是最优的,回去有时间优化一下。