ZKX's LAB

水仙花数的算法 求水仙花数最速求解算法

2021-03-11知识2

求水仙花数最速求解算法 128468643043731391252449177399146038697307*/includeincludeincludeinclude128468643043731391252449177399146038697307*/我的程序只用了34秒乍一下很难,很容易往那个一位位枚举数字的方向去,但是这样的复杂度很高,尽管加上了一些判断还是于事无补我说一下思路吧,先把所有的数字的21次方求出来放在一个数组里保存,然后再去枚举每一个数字有几个,总共加起来是二十一位数字,这个枚举的操作次数相对刚才的那个是小多了,然后把这些数的21次方加起来,然后再去判断一下,是不是由这些数字组成就行了const int BIT=100000000;struct BigNum{int dig[6];int len;void Clr(){memset(dig,0,sizeof(dig));len=1;}void Print(){int i;printf(\"%d\",dig[len-1]);for(i=len-2;i>;=0;i-)printf(\"%08d\",dig[i]);puts(\"\");}};BigNum p[10],MAX,MIN;BigNum sp[10][22];int take[10]={0};int LEN=21;int GetLen(BigNum a){int i;for(i=5;i>;0&a.dig[i]=0;i-);return i+1;}BigNum CarryUp(BigNum a){int i;for(i=0;i;i+){a.dig[i+1]+a.dig[i]/BIT;a.dig[i]%BIT;}return a;}BigNum Multi(BigNum a,BigNum b){BigNum c;int i,j,k;c.Clr();c.len=a.len+b。.

求三位数水仙花数的算法怎么设计?

水仙花数计算方法是什么? 水仙花数计算方法:是指一个 n 位数(n≥3),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3+5^3+3^3=153)水仙花数计算方法,是一种程序代码用的方法。好比C语言。

java编程怎么计算1000的水仙花数,java编程水仙花数代码是比较经典的练习题目,所以今天就由小编来为大家介绍java编程怎么计算水仙花数。

求水仙花数最速求解算法

水仙花数的算法 求水仙花数最速求解算法

#水仙花数的算法

随机阅读

qrcode
访问手机版