想看題目請點我
#include <iostream>
#include <math.h>
using namespace std;
main() {
int n , m ;
while(cin >> n >> m)
{
if((n0) && (m<=1000000))
{
int flag = 0 ;
for(int i = n ; i<=m ; i++)
{
int number[7] = { 0,0,0,0,0,0,0 } , value = i , length = 0 ;
//1634 = 1^4 + 6^4 + 3^4+ 4^4 取出1634
for(int j = 0 ; value !=0 ; j++)
{
number[j] = value % 10 ;
value /= 10 ;
length++ ;
}
// 次方判斷
for(int j = 1 ; j <= length ; j++ )
{
value = pow(number[6],j)+pow(number[5],j)+pow(number[4],j)+pow(number[3],j)+pow(number[2],j)+pow(number[1],j)+pow(number[0],j) ;
if( value == i )
{
cout << i << " " ;
flag = 1 ;
}
}
}
if(flag == 0) cout << "none" ;
cout << endl ;
}
}
}