七位数时查找超时,查资料发现是math库中pow()函数的问题,需要自己定义一个pow()函数
#include<stdio.h>
int pow(int a,int b);
int main(){
int N,i,n,a;
scanf("%d",&N);
for(i=pow(10,N-1);i<=pow(10,N);i++){
a=i;
int sum=0;
while(a>0){
n=a%10;
sum=sum+pow(n,N);
a=a/10;
}
if(sum==i) printf("%d\n",i);
}
return 0;
}
int pow(int a,int b){
int i,t=a;
for(i=1;i<b;i++) a=a*t;
return a;
}