hdu 2010 水仙花数

http://acm.hdu.edu.cn/showproblem.php?pid=2010

题目大意

输入两个整数m和n(100<=m<=n<=999),要求输出所有在m和n范围内的水仙花数,多个则用空格隔开,不存在则输出no。

Sample Input

100 120

300 380

Sample Output

no

370 371

方法与总结

  • 判断水仙花数
  • 注意每行最后不能留有空格,否则就会出现Presentation Error,我就犯了这个错误。

代码

#include<iostream>
using namespace std;

bool Check(int num)
{
    int g,s,b;
    g=num%10;
    s=num%100/10;
    b=num/100;
    if(num==g*g*g+s*s*s+b*b*b)
    return 1;
    else
    return 0;
}

int main()
{
    int m,n,count;
    while(cin>>m>>n)
    {
        count=0;
        for(int i=m;i<=n;i++)
        {
            if(Check(i))
            {
                if(count)
                cout<<" ";
                cout<<i;
                count++;
            }
        }
        if(!count)
        cout<<"no";
        cout<<endl;
    }
    return 0;
}
/* bottom:40px 距浏览器底部距离 right:40px 距浏览器右边距离 */