[关闭]
@chawuciren 2018-10-29T03:34:08.000000Z 字数 488 阅读 530

Perfect Number

leetcode


Finally answer:

  1. bool checkPerfectNumber(int num) {
  2. int sum=0;
  3. int t=num/2;
  4. if(num==0) //especial situation
  5. return false;
  6. for(int i=1;i<=t;i++) //if i is smaller than num/2, do this
  7. { if(num%i==0)
  8. sum+=i;
  9. }
  10. if(sum==num)
  11. return true;
  12. else
  13. return false;
  14. }

And an awful answer:

  1. bool checkPerfectNumber(int num){
  2. int sum=0;
  3. if(num==0)
  4. return false;
  5. if (num>=99999995) //if the number bigger than 99999995, I guess it is false
  6. return false;
  7. for(int i=1;i<num;i++){
  8. if(num%i==0)
  9. sum+=i;
  10. }
  11. if(sum==num)
  12. return true;
  13. else
  14. return false;
  15. return;
  16. }

在此输入正文

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注