求水仙花数最速求解算法
最佳回答
最新回答共有2条回答
-
2026-04-02 19:28:40知性的花生
回复#include#include#include#include//我的程序只用了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;ia。len)a。len=b。len;for(i=0;i=0;i--){b。dig[0]=b。dig[0]*10+a。dig[i];}for(i=15;i>=8;i--){b。dig[1]=b。dig[1]*10+a。dig[i];}for(i=23;i>=16;i--){b。dig[2]=b。dig[2]*10+a。dig[i];}return b;}bool ok(BigNum sum){int aa[10]={0};int i;for(i=0;i
热门文章
- 康达学院专转本五年制
- 高考一个考场分ab卷吗
- not only but also用法
- 某物体做自由落体运动,从释放开始计时,则物体在前2s内的平均速度为______m/s,物体下落2m时的速度大小为______m/s.
- 三角函数公式大全表格
- 地理中考必背知识点2022
- 2013-2014学年小学六年级科学上学期期末考试试卷及答案
- 人教版2014-2015学年小学五年级英语第二学期期中教学质量检测试卷及答案
- 【Linux驱动开发】设备树详解(二)设备树语法详解
- 别跟客户扯细节
- 在别的城市买房子能落户吗
- 卖房前要把装修贷还完吗
- 高中政治教学提高教学效果的方法探究
- “互联网+”背景下的初中英语课堂教学改革与创新策略研究
- 2022年终止合同范本
- 租房合同范本范文
- 如何挑选土豆
- 如何挑选土鸡
