zcmu-2109 五次方数

【题述】

Description

对一个数十进制表示时的每一位数字乘五次方再求和,会得到一个数的五次方数
例如:1024的五次方数为1+0+32+1024=1057
有这样一些神奇的数,它的五次方数就是它自己,而且这样的数竟然只有有限多个
从小到大输出所有这样的数

Input

Output

每个数独立一行输出

Sample Input

Sample Output

10 200 3000

难点:

  刚开始我以为这个样例输出是对的...注意⚠️10,200,3000不是正确输出的答案。

思路:

  很水,就是普通求一下就可以,我从10万开始试的,试到30万数字和20万的时候没变化,就应该是这些了。

【通过代码】

#include<iostream>
#include <cmath>
using namespace std;
int main(){
    int i,sum,a,j,r;
    int t[300005];
    for(i=0;i<300000;i++)
    {
        a=i;
        j=0;
        while(a!=0){
            t[j++]=a%10;
            a=a/10;
        }
        sum=0;
        for(r=0;r<j;r++){
            sum+=pow(t[r],5);
        }
        if(sum==i)
            cout<<i<<endl;
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/hzyhfxt/article/details/81184339
今日推荐