题解 | 完数

完数

https://www.nowcoder.com/practice/3d8cabccd6224b638573293a811c6346

#include <stdio.h>
int  wang(int n){
    int sum=1;
for(int i=2;i<=sqrt(n);i++){
if(n%i==0)sum=sum+(i+n/i);}
return sum;
}

int main() {
    int a, b,n;
   scanf("%d", &n) ;
   for(int i=2;i<=n;i++)
    { // 注意 while 处理多个 case
     int t=wang(i); // fun(i); // 64 位输出请用 printf("%lld") to 
      if(t==i)  printf("%d ", t);
    }
    return 0;
}

我还是可以嘛 函数+循环

全部评论

相关推荐

点赞 评论 收藏
分享
KKorz:是这样的,还会定期默写抽查
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务