这一题也是简单的题目,容易出错的点事 m=n的这种情况很少考虑到。
#include<iostream>
#include <vector>
using namespace std;
int main()
{
int m, n;
int a, b, c;
int flag;
vector<int> sz;
while (cin >> m >> n)
{
flag = 0;
for (int i = m; i <= n; i++)
{
a = i / 100;
b = i % 10;
c = (i / 10) % 10;
if (i == (a*a*a + b*b*b + c*c*c))
{
flag++;
sz.push_back(i);
}
}
if (flag ==0)
{
cout << "no" << endl;
}
else
{
for (int i = 0; i < flag - 1;i++)
{
cout << sz[i] << " ";
}
cout << sz[flag - 1] << endl;
}
sz.clear();
}
return 0;
}